Syntaxhighlight für CPP

Forum für alles rund um die MSEide und MSEgui

Syntaxhighlight für CPP

Beitragvon Mathias » 13. Apr 2018, 19:22 Syntaxhighlight für CPP

Ich habe versucht, in der mseIDE eine *.cpp Datei zu öffnen.
Wieso wird die Syntaxhighlight in dieser nicht angewendet ?
Auch mit *.java geht es nicht.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 4327
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon mse » 13. Apr 2018, 20:47 Re: Syntaxhighlight für CPP

Vermutlich fehlt "*.cpp" in 'Project'-'Options'-'Editor'-'Source'-'Syntax definition files' bei cpp.sdf.
cppsdef.png

Auch mit *.java geht es nicht.

Siehe letzte Zeile im screenshot.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
mse
 
Beiträge: 1986
Registriert: 16. Okt 2008, 09:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0) | 
CPU-Target: x86,x64,ARM
Nach oben

Beitragvon Mathias » 13. Apr 2018, 21:00 Re: Syntaxhighlight für CPP

mseide ist eine rechte Wundertüte. 8)

Ich habe versucht, für GLSL von OpenGL einen Syntaxhighlight zu schreiben.
Jetzt wie ich wies wie es mit cpp geht, funktioniert es auch mit GLSL.

Wen du willst, kannst du die Datei im Anhang bei die einbauen.

Mit #define stimmt noch etwas nicht, vielleicht habe ich zu viel geändert.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 4327
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon mse » 13. Apr 2018, 21:13 Re: Syntaxhighlight für CPP

Danke, committed in git master d4583d7a791e14af73d1bd53fd7b2115f1ee94f2.
Die Syntax Definition einer *.sdf Datei ist in
https://gitlab.com/mseide-msegui/mseide ... ainter.pas
Code: Alles auswählen
 
sdef file =
{globaldefinition}
{scope}
//last scope is default scope
globaldefinition = CASEINSENSITIVE | keywordchars | addkeywordchars |
     keyworddefs | editorcolors | styles | pairwords
 
keywordchars =
KEYWORDCHARS newline
{{string} newline}
//default = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxy0123456789_'
 
addkeywordchars =
ADDKEYWORDCHARS newline
{{string} newline}
 
string =
'{character}'
 
character =
ASCII-character
 
styles =
STYLE newline
{stylename styledef newline}
 
styledef =
[stylestring [fontcolor [colorbackground]]]
 
stylestring =
'[b][i][u][s]'
//b = bold i = italic u = underline s = strikeout
 
keyworddefs =
KEYWORDDEFS keyworddefsname [stylename] newline
{{keyword} newline}
 
keyword =
string
 
editorcolors =
COLORS [fontcolor [backgroundcolor [statementcolor [pairmarkbackgroundcolor]]]]
//   cl_default for MSEide project options settings
 
pairwords =
PAIRWORDS newline
{pairbegin {pairbegin} pairend newline}
// used in MSEide
 
pairbegin = string
pairend = string
 
scope =
SCOPE scopename [stylename] newline
{localdefinition}
 
localdefinition =
keywords | calltokens | jumptokens | endtokens | RETURN newline
 
keywords =
KEYWORDS [style] newline //style used as default
{keyworddefsname [style] newline}
 
calltokens =
CALLTOKENS newline
{{[.|,]string}[.]} scopename newline}
 
 //. -> whitespace, example:
 //'begin' finds 'abeginz ...
 //.'begin' finds newline'beginz', ' beginz' ...
 //'begin'. finds 'abegin ', 'abegin'newline ...
 //.'begin'. finds newline'begin ',' begin ', ' begin'newline ...
 //, -> begin of line
 
jumptokens =
JUMPTOKENS newline
[{{[.]string}[.]}] scopename newline}
 
// scopename newline -> unconditional jump
 
endtokens =
ENDTOKENS newline
{{[.]string}[.]} [stylename] newline}
 
 //'' -> end of line
 
 
mse
 
Beiträge: 1986
Registriert: 16. Okt 2008, 09:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0) | 
CPU-Target: x86,x64,ARM
Nach oben

Beitragvon mse » 13. Apr 2018, 21:27 Re: Syntaxhighlight für CPP

Mathias hat geschrieben:Mit #define stimmt noch etwas nicht, vielleicht habe ich zu viel geändert.

Funktioniert es mit git master 736552b492a9cd40f1d200c2bdd6f618244fb285?
https://gitlab.com/mseide-msegui/mseide-msegui
Code: Alles auswählen
 
diff --git a/apps/ide/syntaxdefs/glsl.sdef b/apps/ide/syntaxdefs/glsl.sdef
index 9e482b46d..ad39fe5c6 100644
--- a/apps/ide/syntaxdefs/glsl.sdef
+++ b/apps/ide/syntaxdefs/glsl.sdef
@@ -56,6 +56,8 @@ scope macros macros
   '//' comment2
 
  endtokens
+  ''
+
 scope block
  keywords
   glsl
 
 
mse
 
Beiträge: 1986
Registriert: 16. Okt 2008, 09:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0) | 
CPU-Target: x86,x64,ARM
Nach oben

Beitragvon Mathias » 14. Apr 2018, 16:26 Re: Syntaxhighlight für CPP

Ich habe diese 2 Zeilen ergänzt, jetzt geht es. Habe ich die versehtlicht gelöscht ?

Ich habe es nochmals von vorn probiert, und nur den Block mit den reservierten Wörter ersetzt. Und dies funktioniert auch, obwohl ich die cpp Zeilen nicht auf glsl umbenannt habe.

So wie ich es gesehen habe, hast du die glsl.sdef bei dir schon eingebaut.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 4327
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon mse » 14. Apr 2018, 17:17 Re: Syntaxhighlight für CPP

Mathias hat geschrieben:Ich habe diese 2 Zeilen ergänzt, jetzt geht es. Habe ich die versehtlicht gelöscht ?

Vermutlich ja.
Ich habe es nochmals von vorn probiert, und nur den Block mit den reservierten Wörter ersetzt. Und dies funktioniert auch, obwohl ich die cpp Zeilen nicht auf glsl umbenannt habe.

Korrekt, dies ist lediglich ein Bezeichner, der Text hat keine Bedeutung. Statt "cpp" könnte man auch überall "hansli" schreiben.

So wie ich es gesehen habe, hast du die glsl.sdef bei dir schon eingebaut.

Ja, vielen Dank.
mse
 
Beiträge: 1986
Registriert: 16. Okt 2008, 09:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0) | 
CPU-Target: x86,x64,ARM
Nach oben

• Themenende •

Zurück zu MSEide und MSEgui



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

porpoises-institution
accuracy-worried