Syntaxhighlighting

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Sonntag 31. Oktober 2004, 00:26

Du brauchst nur die Dateien /templates/subSilver/overall_header.tpl und /templates/subSilver/simple_header.tpl so anzupassen, daß sie die css.php verwenden.
Also

Code: Alles auswählen

<link rel="stylesheet" href="templates/subSilver/css.php" type="text/css">
an passender Stelle einfügen.

Nochmal wegen der Zeilennummerierung. Du kannst nie sicher sein, daß nicht einer für die Anzeige nichtproportionalen Textes im Browser seine eigene Schriftart einstellt. dann ist wieder alles durcheinander mit den Zeilennumern. Ich hab leider keine parktikable Lösung für das Problem gefunden, darum gibts bei meinem Syntaxhighlighter keine Zeilennummern.


Gruß

Dookie
[code]#!/usr/bin/env python
import this[/code]
murphy
User
Beiträge: 60
Registriert: Samstag 30. Oktober 2004, 01:34
Wohnort: Berlin
Kontaktdaten:

Sonntag 31. Oktober 2004, 07:02

erstmal vielen dank für die hilfe. ich kann ja leider nicht alles alleine testen, und solche bugreports sind gold wert.
Dookie hat geschrieben:Du brauchst nur die Dateien /templates/subSilver/overall_header.tpl und /templates/subSilver/simple_header.tpl so anzupassen, daß sie die css.php verwenden.
ok, das war zu einfach :oops:
aber: mir wärs doch lieber, wenn die css statisch wäre - spart traffic.

außerdem glaube ich, die lösung gefunden zu haben. sie lautet:

Code: Alles auswählen

	line-height: 14px;
kannst du es jetzt nochmal ausprobieren?

wenn das funktioniert, kannst du ja deinen highlighter erweitern.
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Sonntag 31. Oktober 2004, 09:59

Was habt's ihr? Mit meinem Mozilla 1.7 (Mozilla/5.0 (Windows; U; Windows NT 5.1; de-AT; rv:1.7) Gecko/20040616) gehen die Nummern auch mit Bold problemlos, ich gehöre zu den zufriedenen Usern :)
My god, it's full of CARs! | Leonidasvoice vs Modvoice
murphy
User
Beiträge: 60
Registriert: Samstag 30. Oktober 2004, 01:34
Wohnort: Berlin
Kontaktdaten:

Sonntag 31. Oktober 2004, 12:46

ich sag ja, unter windows gehts. keine ahnung, was die bei Linux da verbockt haben.
aber ich will ungern die Unix-fans verprellen, wo ich doch selber langsam umsteige ;)
btw: benutze selbst den firefox! IE kann ja keiner aushalten.
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Sonntag 31. Oktober 2004, 15:08

murphy hat geschrieben:btw: benutze selbst den firefox! IE kann ja keiner aushalten.
Full Ack!
My god, it's full of CARs! | Leonidasvoice vs Modvoice
murphy
User
Beiträge: 60
Registriert: Samstag 30. Oktober 2004, 01:34
Wohnort: Berlin
Kontaktdaten:

Mittwoch 3. November 2004, 20:30

habe den Python-highlighter nochmal verbessert:
http://rd.cycnus.de/phpBB2/viewtopic.php?p=60#60

ich würde mich sehr freuen, wenn ihr den scanner mal testet, da ich die ganzen syntax-spezialitäten nicht kenne.

frage: warum hat

Code: Alles auswählen

import
eine andere farbe als

Code: Alles auswählen

print
? beides sind schlüsselworte.

auf SciTE würde ich mich übrigends, was highlighting betrifft, nicht stützen. für Ruby macht er sich zB nicht mal die mühe, reguläre ausdrücke zu highlighten.
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Mittwoch 3. November 2004, 21:45

Hi murpy,

IMHO wird import in den meisten Editoren mit einer eigenen Farbe versehen, weil es sich eher wie eine Direktive als ein Kommando verhält, vergleichbar mit include bei C/C++.... Ausserdem kommt import in der Regel nur am Anfang eines Scripts vor während print, das einem Befehl entspricht, überall vorkommen kann.

Ansonst funktioniert Dein Highlighter ganz ordentlich was ich bisher gesehen hab. Eventuell könntest Du noch Einbauen, daß der User sich die Farben für das Syntaxhighlighting selber im Profil einstellen kann bzw. aus verschiedenen *.css Dateien auswählen kann.


Gruß

Dookie
[code]#!/usr/bin/env python
import this[/code]
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Mittwoch 3. November 2004, 22:10

murphy hat geschrieben:auf SciTE würde ich mich übrigends, was highlighting betrifft, nicht stützen. für Ruby macht er sich zB nicht mal die mühe, reguläre ausdrücke zu highlighten.
Kann man ja konfigurieren. So hatte ich mal einen Highlighter gesehen der Python PHP DocBook, Python uvm. in einer Datei korrekt gehighlightet hat. Und falls was kannst du dich in der Mailingliste beschweren, da ist sogar mehr los als auf der Python-de liste, hihi.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
murphy
User
Beiträge: 60
Registriert: Samstag 30. Oktober 2004, 01:34
Wohnort: Berlin
Kontaktdaten:

Mittwoch 3. November 2004, 22:12

Dookie hat geschrieben:Eventuell könntest Du noch Einbauen, daß der User sich die Farben für das Syntaxhighlighting selber im Profil einstellen kann bzw. aus verschiedenen *.css Dateien auswählen kann.
wie schon gesagt, ich scheue den aufwand, der die installation verkomplizieren und das testen in die länge ziehen würde.
wer meine farben partout nicht mag kann sie global ändern. mehr geht zur zeit nicht. wäre was für version 1.1.
murphy
User
Beiträge: 60
Registriert: Samstag 30. Oktober 2004, 01:34
Wohnort: Berlin
Kontaktdaten:

Dienstag 9. November 2004, 16:30

die Beta-version von meinem highlighter-mod ist jetzt draußen :)

das problem mit den verschobenen zeilennummern ist immernoch vorhanden. grund ist wohl, dass fette schriftarten irgendwie um promill-größen höher sind als normale. seltsamerweise wird das durch eine fixe line-height nicht ignoriert.
ich suche weiter nach einer lösung, bis dahin muss ich eben hoffen, dass 'Courier New' und 'Terminal' bei den meisten funktionieren.
murphy
User
Beiträge: 60
Registriert: Samstag 30. Oktober 2004, 01:34
Wohnort: Berlin
Kontaktdaten:

Mittwoch 10. November 2004, 02:40

@Dookie: ich will für die version 1.1 versuchen, die engine zu beschleunigen.
hast du zufällig eine benchmark-möglichkeit eingebaut?
ich würde gerne vergleichen, wie schnell dein scanner gegen CodeBB ist.
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Mittwoch 10. November 2004, 14:49

murphy hat geschrieben:@Dookie: ich will für die version 1.1 versuchen, die engine zu beschleunigen.
hast du zufällig eine benchmark-möglichkeit eingebaut?
ich würde gerne vergleichen, wie schnell dein scanner gegen CodeBB ist.
Ich würde sagen: schnell genug, ich habe durch den Python Code keinen Slowdown des Forums beobachten können.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
murphy
User
Beiträge: 60
Registriert: Samstag 30. Oktober 2004, 01:34
Wohnort: Berlin
Kontaktdaten:

Mittwoch 10. November 2004, 15:35

jupp. hab mich selbst mal drum gekümmert: Dookies' scanner ist natürlich schneller.
bei CodeBB werden ca. 6 ms für die grundlegende engine gebraucht, und dann braucht der scanner in etwa doppelt so lange :(
der große vorteil meiner engine ist, dass die sprache durch reguläre ausdrücke beschrieben wird, also sehr einfach zu erweitern und zu verändern ist. leider ist das in PHP nicht so schnell wie Dookie's methode.
Dookie's scanner ist sozusagen eine optimierte spezialanfertigung :)

mein Python-scanner ist übrigends hier: http://cycnus.de/murphy/scanner_python.php.html
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Mittwoch 10. November 2004, 16:37

Hi murphy,

ich hatte mal eine Version, mit Anzeige der Parsingdauer eben zum optimieren. Habs sogar noch in einem Zip mit der bbcode.php gefunden, wenn du mir ne pm mit deine Emailaddi schickst, kann ich dir das zip schicken.


Gruß

Dookie
[code]#!/usr/bin/env python
import this[/code]
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Mittwoch 10. November 2004, 16:40

mail ist raus:


Gruß

Dookie
[code]#!/usr/bin/env python
import this[/code]
Antworten