Syntax Highlight
-
Kann mir jemand einen Tip geben, wie ich auf einem Memo oder Richtext ein Syntax-Highlight draufkriege?
Mit SelStart und SelLength und String-Suchen kanns ja wohl nicht sein. Dauert viel zu lange.
Also, wie geht das?
-
Such mal über Google oder im Forum nach SynEdit.
-
Hast du dir den entsprechenden FAQ-Eintrag (Richedit) dazu durchgelesen?
-
hallo trulli,
ich kann nur dasd zustimmen, wenn du was einfaches und schnelles haben möchtest, nimm die synedit komponente. ich habe einen syntaxhighlighter für die arbeit geschrieben, da wir dort keine fremden komponenten nutzen dürfen. doch bei grossen texten wird es problematisch, da ich den text mit rtf formatiere und dafür aber jedesmal den ganzen text laden muss. das verfahren hört sich zwar langsam an, ist aber bei 60 schlüsselwörtern und 500kb beim ersten laden wesentlich schneller als das verfahren aus der faq. ich habe versucht die beiden verfahren zusammenzubringen, doch es scheitert an kommentarzeichen wie "//" und "/**/". ohne kommentare ist es verdammt schnell geworden. wenn du genauere infos haben möchtest, melde dich einfach bei mir
gruß meikrosoft
-
Wie wär's, wenn du deine "verdammt schnelle" Lösung hier mal vorstellst? Das wäre ja sicher auch was für die FAQ, und ggf. können auch noch die beschriebenen Probleme ausgeräumt werden.
-
Sowas kann ich auch gut gebrauchen, für meine eigene Scriptsprache... dafür will ich noch nen Editor basteln, aber am Syntaxhighlighting ist es bislang gescheitert...
- Windoof
-
Wie gesagt, nehmt SynEdit. Damit kann man ganz einfach Highlighter (auch für eigene Sprachen) erstellen. Hab' ich auch schonmal für eine eigene Scriptsprache gemacht.
-
[edit] bei mir gibts irgendwie keine designide.bpi

-
hi,
ich werde morgen oder übermorgen mal meine variante posten. ich muss nur vorher einige stellen ändern, da wir z.b. eine eigene stringklasse nutzen.
mfg meikrosoft
-
hi,
ich habe mal ein beispiel projekt erstellt und hochgeladen. wenn mir jemand mit dem problemen bei den kommentaren helfen kann wäre das echt klasse.
wenn euch die geschwindigkeit egal ist, könnt ihr auch folgende zeile "_syntaxhighlighter->change();" in RichEdit1Change(TObject *Sender) durch "_syntaxhighlighter->laden(RichEdit1->Text);" austauschen.
ich hoffe das es jemanden gebrauchen kann
gruß meikrosoft
-
Hi,
Vor ewigkeiten gepostet stosse ich erst jetzt wieder dazu.
An MEIKrosoft
Wenn ich dein Projekt debugge(starte) fehlt webdsnap.bpi.
-
dann hat er Enterprise und du Professional oder Personal Edition
EDIT: lösche aus der Projekt.bpr einfach websnap.bpi oder wie das heisst, dann müsste es gehen