Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Frage zu SynGen & Grammatikerstellung (https://www.delphipraxis.net/172484-frage-zu-syngen-grammatikerstellung.html)

Codewalker 6. Jan 2013 17:23

Frage zu SynGen & Grammatikerstellung
 
Hallo zusammen,

nach dem Lesen der (überaus dürftigen) Doku zu dem Thema und diversen Forenthread, habe ich versucht eine Grammatik für AutoIt zu erstellen. Das Ganze sieht bis jetzt so aus:
Code:
TAutoItSyn
tk
IdentStart '_', 'a'..'z', 'A'..'Z':: '_', '0'..'9', 'a'..'z', 'A'..'Z'::
TOKENTYPES
Variable
Identifier
Key
Comment
Space
String
IncFile
|><|
KEYS
ByRef
Const
ContinueCase
ContinueLoop
Default
Dim
Do
Until
Enum
Exit
ExitLoop
False
For
To
Step
Next
In
Func
Return
EndFunc
Global
If
Then
ElseIf
Else
EndIf
Local
ReDim
Select
Case
EndSelect
Static
Switch
EndSwitch
True
With
EndWith
While
WEnd
|><|
CHARS
'+','-','[',']','.',',','{','}','(',')','0'..'9':: Ident
BeginProc
  fTokenID := IdentKind((fLine + Run));
  inc(Run, fStringLen);
  while IsIdentChar(fLine[Run]) do
    Inc(Run);
EndProc
|><|
ENCLOSEDBY
IncFile,IncFile,<,>
Comment,MultilineCommentShort,#cs,#ce,MultiLine
Comment,LineComment,;,#13
String,String,","
|><|
Dabei schieße ich mir die IDE regelmäßig (wahrscheinlich wegen einer Endlosschleife ab). Es wird außerdem viel zu viel als Identifier erkannt, meine Keywords nicht korrekt hervorgehoben und Variablen (beginnen mit einem $ gefolgt von einer Bezeichnung) kriege ich auch nicht hinein. Was ich außerdem nicht verstehe, ich das Stück Code was dort eingefügt werden muss.
Kann mir hier jemand weiterhelfen und auf mehr Doku verweisen oder mir hier direkt weiterhelfen?

Codewalker 11. Jan 2013 07:17

AW: Frage zu SynGen & Grammatikerstellung
 
*push*


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:44 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz