Einzelnen Beitrag anzeigen

Gentleman

Registriert seit: 29. Sep 2004
302 Beiträge
 
Turbo Delphi für Win32
 
#1

Synedit Multihighlighter zur Laufzeit erstellen [GELÖST]

  Alt 9. Nov 2007, 19:08
Hallo,

Wie der Titel schon sagt, möchte ich gerne einen Synedit Multi-Highlighter zur Laufzeit erstellen.

Bisher sieht mein Code folgendermaßen aus:

Delphi-Quellcode:
var
  html: TSynHTMLSyn;
  php: TSynPHPSyn;
  Multi: TSynMultiSyn;
begin
  html:= TSynHTMLSyn.Create(nil);
  php:= TSynPHPSyn.Create(nil);
  Multi:= TSynMultiSyn.Create(nil);

  // ???

  Editor.Highlighter:= Multi;
end;

Ich erstelle also den HTML-, PHP- und den Multi-Highlighter, aber wie kann ich nun dem Multi-H. PHP und HTML zuweisen?

Vielen Dank im Voraus!

Gruß,
Lennard


[Edit]

habe eine Lösung gefunden:

Delphi-Quellcode:
var
  html: TSynHTMLSyn;
  php: TSynPHPSyn;
  Multi: TSynMultiSyn;
begin
  html:= TSynHTMLSyn.Create(nil);
  php:= TSynPHPSyn.Create(nil);
  Multi:= TSynMultiSyn.Create(nil);

  Multi.DefaultHighlighter:= html;

  with TScheme(Multi.Schemes.Add) do
    begin
      Highlighter:= php;
      CaseSensitive:= false;
      StartExpr:= '<\?(php){0,1}';
      EndExpr:= '\?>';
    end;
  

  Editor.Highlighter:= Multi;
end;
Lennard
Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger. (Kurt Tucholsky)
  Mit Zitat antworten Zitat