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!