Einzelnen Beitrag anzeigen

hedie

Registriert seit: 12. Dez 2005
Ort: Schweiz
1.024 Beiträge
 
Delphi XE6 Starter
 
#1

Syntaxhighlighting mit SynEdit für Python nicht komplett

  Alt 11. Apr 2015, 01:48
Hallo zusammen

Ich möchte in meiner Anwendung dem Benutzer eine möglichkeit geben, Code, in meinem Fall Python einzugeben.
Dazu habe ich mit SynEdit installiert (Delphi XE6)

Nun habe ich mir ein SynEdit auf das Formular gezogen, den PythonHighlighter und die beiden verknüpft.
Ich musste noch etwas an den Farben schrauben...


Als Beispiel, habe ich mir diesen Code genommen:
http://code.activestate.com/recipes/...-highlighting/

Ich bin mir nicht sicher, wie "richtig" gehighlighteter Python code aussihet.
Aber in etwa so wie im Link sollte es passen.

Bei mir sieht es wie im Anhang aus.
Es Fehler Wörter wie z.b. "Try" oder "return" etc...

#### EDIT #####

Ich habe nun im Package die Datei SynHighlighterPython.pas geöffnet.
Dort gibt es folgenden Bereich:

Delphi-Quellcode:
  // List of keywords
  KEYWORDCOUNT = 29;
  KEYWORDS: array [1..KEYWORDCOUNT] of UnicodeString =
    (
    'and',
    'assert',
    'break',
    'class',
    'continue',
    'def',
    'del',
    'elif',
    'else',
    'except',
    'exec',
    'finally',
    'for',
    'from',
    'global',
    'if',
    'import',
    'in',
    'is',
    'lambda',
    'not',
    'or',
    'pass',
    'print',
    'raise',
    'return',
    'try',
    'while',
    'yield'
    );
Offensichtlich existieren meine Wörter "try" "return" etc.. bereits.
Ich habe mal das wort "def" welches ja erkannt wird, in der Liste auf "defi" geändert und neu compiliert.
Siehe da, SynEdit markiert mir wie gewünscht "def" nicht mehr dafür aber "defi".
Nun stellt sich mir die frage, weshalb "try" und all die anderen wörter NICHT markiert werden
obschon diese in der Liste sind.

Hat jemand eine Idee?

Bis und mit "exec" gehts noch. "finally" und all die nachfolgenden gehen nicht mehr!

Danke schonmal!
Miniaturansicht angehängter Grafiken
pythonhighlight.png  
Claudio
Tu was du nicht lassen kannst
- http://endasmedia.ch

Geändert von hedie (11. Apr 2015 um 10:07 Uhr)
  Mit Zitat antworten Zitat