GameMonkey.chl 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219
  1. //////////////////////////////////////////////////////////////////////////////
  2. //
  3. // GameMonkey highlighter written by Matthew Riek and Greg Douglas
  4. //
  5. //////////////////////////////////////////////////////////////////////////////
  6. //////////////////////////////////////////////////////////////////////////////
  7. // language name
  8. Language: GameMonkey Script
  9. //////////////////////////////////////////////////////////////////////////////
  10. // default file filter
  11. // note: if more than one extension is associated, eg:
  12. // C/C++ files (*.c,*.cpp,*.h,*.hpp)|*.c;*.cpp;*.h;*.hpp
  13. Filter: GameMonkey Script files (*.gm)|*.gm
  14. //////////////////////////////////////////////////////////////////////////////
  15. // help file which will be invokend when F1 is pressed
  16. HelpFile:
  17. //////////////////////////////////////////////////////////////////////////////
  18. // language case sensitivity
  19. // 0 - no
  20. // 1 - yes
  21. CaseSensitive: 1
  22. //////////////////////////////////////////////////////////////////////////////
  23. // comment type: LineComment - comment to the end of line
  24. // BlockCommentBeg - block comment begin, it could be
  25. // multiline
  26. // BlockCommentEnd - block comment end
  27. LineComment: //
  28. BlockCommentBeg: /*
  29. BlockCommentEnd: */
  30. //////////////////////////////////////////////////////////////////////////////
  31. // identifier characters
  32. // note: characters shouldn't be delimited, except arrays
  33. // array of chars could be defined as from_char..to_char
  34. IdentifierBegChars: a..z A..Z _
  35. IdentifierChars: a..z A..Z _ 0..9
  36. //////////////////////////////////////////////////////////////////////////////
  37. // numeric constants begin characters
  38. // note: characters shouldn't be delimited, except arrays
  39. // array of chars could be defined as from_char..to_char
  40. // number always starts with 0..9 except when NumConstBeg
  41. // defines other
  42. NumConstBegChars: 0..9
  43. //////////////////////////////////////////////////////////////////////////////
  44. // numeric constants characters
  45. // note: characters shouldn't be delimited, except arrays
  46. // array of chars could be defined as from_char..to_char
  47. // number always starts with 0..9 except when NumConstBeg
  48. // defines other
  49. NumConstChars: 0..9 abcdefxABCDEFX .
  50. //////////////////////////////////////////////////////////////////////////////
  51. // escape character
  52. EscapeChar:
  53. //////////////////////////////////////////////////////////////////////////////
  54. // keyword table
  55. // note: delimited with spaces, lines could be wrapped
  56. // you may divide keywords into two groups which can be
  57. // highlighted differently
  58. // op codes
  59. KeyWords1: if
  60. else
  61. for
  62. foreach
  63. in
  64. and
  65. or
  66. while
  67. dowhile
  68. function
  69. return
  70. continue
  71. break
  72. null
  73. global
  74. local
  75. member
  76. table
  77. true
  78. false
  79. this
  80. KeyWords2:
  81. KeyWords3:
  82. debug
  83. typeId
  84. typeName
  85. typeRegisterOperator
  86. typeRegisterVariable
  87. sysCollectGarbage
  88. sysGetMemoryUsage
  89. sysGetDesiredMemoryUsageHard
  90. sysGetDesiredMemoryUsageSoft
  91. sysSetDesiredMemoryUsageHard
  92. sysSetDesiredMemoryUsageSoft
  93. sysSetDesiredMemoryUsageAuto
  94. sysTime
  95. doString
  96. globals
  97. threadTime
  98. threadId
  99. threadAllIds
  100. threadKill
  101. threadKillAll
  102. thread
  103. yield
  104. exit
  105. assert
  106. sleep
  107. signal
  108. block
  109. stateSet
  110. stateSetOnThread
  111. stateGet
  112. stateGetLast
  113. stateSetExitFunction
  114. tableCount
  115. tableDuplicate
  116. print
  117. format
  118. //////////////////////////////////////////////////////////////////////////////
  119. // string delimiter: StringBegChar - string begin char
  120. // StringEndChar - string end char
  121. // MultilineStrings - enables multiline strings, as perl
  122. // has it
  123. StringBegChar: "`'
  124. StringEndChar: "`'
  125. MultilineStrings: 0
  126. //////////////////////////////////////////////////////////////////////////////
  127. // use preprocessor: 0 - no
  128. // 1 - yes
  129. // note: if yes, '#' and statements after it will be
  130. // highlighted with Preprocessor defined colors
  131. UsePreprocessor: 0
  132. //////////////////////////////////////////////////////////////////////////////
  133. // highlight line: 0 - no
  134. // 1 - yes
  135. // note: if yes, current line will be highlighted
  136. CurrLineHighlighted: 0
  137. //////////////////////////////////////////////////////////////////////////////
  138. // colors
  139. // note: first value is foreground, second is background color
  140. // and third (optional) represents font attribute:
  141. // B - bold
  142. // I - italic
  143. // U - underline
  144. // S - strike out
  145. // attributes can be combined: eg. B or BI
  146. // as value, it could be used any standard windows color:
  147. // clBlack, clMaroon, clGreen, clOlive, clNavy,
  148. // clPurple, clTeal, clGray, clSilver, clRed, clLime,
  149. // clYellow, clBlue, clFuchsia, clAqua, clLtGray,
  150. // clDkGray, clWhite, clScrollBar, clBackground,
  151. // clActiveCaption, clInactiveCaption, clMenu, clWindow,
  152. // clWindowFrame, clMenuText, clWindowText, clCaptionText,
  153. // clActiveBorder, clInactiveBorder, clAppWorkSpace,
  154. // clHighlight, clHighlightText, clBtnFace, clBtnShadow,
  155. // clGrayText, clBtnText, clInactiveCaptionText,
  156. // clBtnHighlight, cl3DDkShadow, cl3DLight, clInfoText,
  157. // clInfoBk
  158. // as value, it could be used hex numeric constant too:
  159. // $BBGGRR - BB: blue, GG: green, RR: red, eg: $FF6A00
  160. SpaceCol: $00D0D0D0 clNavy
  161. Keyword1Col: clYellow clNavy
  162. Keyword2Col: clYellow clNavy
  163. Keyword3Col: $00FFC0C0 clNavy
  164. IdentifierCol: $00D0D0D0 clNavy
  165. CommentCol: $00C0C000 clNavy
  166. NumberCol: clLime clNavy
  167. StringCol: clLime clNavy
  168. SymbolCol: clWhite clNavy
  169. PreprocessorCol: $00FFFF40 clNavy
  170. SelectionCol: clNavy $00D0D0D0
  171. CurrentLineCol: clBlack clYellow
  172. OverrideTxtFgColor: 0
  173. BlockAutoindent: 0
  174. BlockBegStr:
  175. BlockEndStr:
  176. MatchedBracesCol: $008080FF clNavy