Advertisement
Guest User

Untitled

a guest
Feb 1st, 2015
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.34 KB | None | 0 0
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. Original Author: Sébastien Lavoie <lavoiseb@iro.umontreal.ca>
  4. Modified By : Austin Byers
  5. Modified By : Enno Güttler
  6. This file should be copied to:
  7. ~/.local/share/gtksourceview-3.0/language-specs/lolcode.lang
  8. or
  9. /usr/share/gtksourceview-3.0/language-specs/lolcode.lang
  10. -->
  11.  
  12. <language id="lolcode" _name="LolCode" version="2.0" _section="Scripts">
  13. <metadata>
  14. <property name="mimetypes">text/lolcode</property>
  15. <property name="globs">*.lol</property>
  16. <property name="line-comment-start">BTW</property>
  17. <property name="block-comment-start">OBTW</property>
  18. <property name="block-comment-end">TLDR</property>
  19. </metadata>
  20.  
  21. <styles>
  22. <style id="comment" _name="Comment" map-to="def:comment"/>
  23. <style id="error" _name="Error" map-to="def:error"/>
  24. <style id="escape" _name="Escaped Character" map-to="def:special-char"/>
  25. <style id="string" _name="String" map-to="def:string"/>
  26. <style id="keyword" _name="Keyword" map-to="def:keyword"/>
  27. <style id="operator" _name="Operator" map-to="def:operator"/>
  28. <style id="type" _name="Data Type" map-to="def:type"/>
  29. <style id="null-value" _name="Null Value" map-to="def:special-constant"/>
  30. <style id="boolean" _name="Boolean value" map-to="def:boolean"/>
  31. <style id="floating-point" _name="Floating point number" map-to="def:floating-point"/>
  32. <style id="decimal" _name="Decimal number" map-to="def:decimal"/>
  33. </styles>
  34.  
  35. <definitions>
  36.  
  37. <context id="cpp-line-comment" style-ref="comment" end-at-line-end="true" extend-parent="false">
  38. <start>BTW</start>
  39. <include>
  40. <context ref="def:in-line-comment"/>
  41. </include>
  42. </context>
  43.  
  44. <context id="c-block-comment" style-ref="comment">
  45. <start>OBTW</start>
  46. <end>TLDR</end>
  47. <include>
  48. <context ref="def:in-line-comment"/>
  49. </include>
  50. </context>
  51.  
  52. <context id="close-comment-outside-comment" style-ref="error">
  53. <match>TLDR(?!TLDR)</match>
  54. </context>
  55.  
  56. <context id="escape" style-ref="escape">
  57. <match extended="true">
  58. :( # leading backslash
  59. [::"o>)] | # single escaped char
  60. )
  61. <!-- currently missing:
  62. :( <hex> )
  63. :{ <var> }
  64. :[ <char name> ] -->
  65. </match>
  66. </context>
  67.  
  68. <context id="double-quoted-string" style-ref="string" end-at-line-end="true">
  69. <start>"</start>
  70. <end>"</end>
  71. <include>
  72. <context ref="escape"/>
  73. </include>
  74. </context>
  75.  
  76. <context id="null_value" style-ref="null-value">
  77. <keyword>NOOB</keyword>
  78. </context>
  79.  
  80. <context id="keywords" style-ref="keyword">
  81. <!-- unsorted -->
  82. <keyword>I HAS A</keyword>
  83. <keyword>ITZ</keyword>
  84. <keyword>HOW IZ I</keyword>
  85. <keyword>IF U SAY SO</keyword>
  86. <keyword>FOUND YR</keyword>
  87. <keyword>LIEK</keyword>
  88. <keyword>KTHX</keyword>
  89. <keyword>IS NOW A</keyword>
  90. <keyword>AN</keyword>
  91. <keyword>MKAY</keyword>
  92. <keyword>BOTH SAEM</keyword>
  93. <keyword>DIFFRINT</keyword>
  94. <keyword>SMOOSH</keyword>
  95. <keyword>R</keyword>
  96. <keyword>A</keyword>
  97. <keyword>IT</keyword>
  98. <keyword>MAEK</keyword>
  99. <keyword>,</keyword>
  100. <keyword>VISIBLE</keyword>
  101. <keyword>GIMMEH</keyword>
  102. <keyword>I IZ</keyword>
  103. <keyword>CAN HAS</keyword>
  104. <keyword>'Z</keyword>
  105. <keyword>…</keyword>
  106. <keyword>SRS</keyword>
  107. <keyword>ME</keyword>
  108. <keyword>O HAI IM</keyword>
  109. <keyword>IM LIEK</keyword>
  110. <keyword>ITZ LIEK</keyword>
  111. <keyword>KTHX</keyword>
  112. <!--<keyword>?</keyword> doesn't work - it's used in CAN HAS STDIO?
  113. <keyword>&#063;</keyword>-->
  114. <!--<keyword>...</keyword> doesn't work and breaks other-->
  115. <!-- If -->
  116. <keyword>O RLY?</keyword>
  117. <keyword>YA RLY</keyword>
  118. <keyword>NO WAI</keyword>
  119. <keyword>OIC</keyword>
  120. <keyword>MEBBE</keyword>
  121. <!-- Switch -->
  122. <keyword>WTF?</keyword>
  123. <keyword>OMG</keyword>
  124. <keyword>OMGWTF</keyword>
  125. <keyword>GTFO</keyword>
  126. <!-- Loop -->
  127. <keyword>IM IN YR</keyword>
  128. <keyword>IM OUTTA YR</keyword>
  129. <keyword>YR</keyword>
  130. <keyword>TIL</keyword>
  131. <keyword>WILE</keyword>
  132. <keyword>UPPIN</keyword>
  133. <keyword>NERFIN</keyword>
  134. <!-- SOCKETS -->
  135. <keyword>BIND</keyword>
  136. <keyword>LISTN</keyword>
  137. <keyword>GET</keyword>
  138. <keyword>PUT</keyword>
  139. <!-- FILEIO -->
  140. <keyword>OPEN</keyword>
  141. <keyword>DIAF</keyword>
  142. <keyword>LUK</keyword>
  143. <keyword>LEN</keyword>
  144. <keyword>CLOSE</keyword>
  145. </context>
  146.  
  147. <context id="operators" style-ref="operator" extend-parent="false">
  148. <keyword>SUM OF</keyword>
  149. <keyword>PRODUKT OF</keyword>
  150. <keyword>DIFF OF</keyword>
  151. <keyword>QUOSHUNT OF</keyword>
  152. <keyword>BIGGR OF</keyword>
  153. <keyword>SMALLR OF</keyword>
  154. <keyword>MOD OF</keyword>
  155. <keyword>BOTH OF</keyword>
  156. <keyword>EITHER OF</keyword>
  157. <keyword>WON OF</keyword>
  158. <keyword>ALL OF</keyword>
  159. <keyword>ANY OF</keyword>
  160. <keyword>NOT</keyword>
  161. </context>
  162.  
  163. <context id="type" style-ref="type">
  164. <keyword>BUKKIT</keyword>
  165. <keyword>TROOF</keyword>
  166. <keyword>NUMBR</keyword>
  167. <keyword>NUMBAR</keyword>
  168. <keyword>YARN</keyword>
  169. </context>
  170.  
  171. <context id="boolean" style-ref="boolean">
  172. <keyword>FAIL</keyword>
  173. <keyword>WIN</keyword>
  174. </context>
  175.  
  176. <context id="float" style-ref="floating-point">
  177. <match extended="true">
  178. (?<![\w\.])
  179. [+-]?([0-9]+[Ee][+-]?[0-9]+ |
  180. ([0-9]*\.[0-9]+ | [0-9]+\.[0-9]*)([Ee][+-]?[0-9]+)?)
  181. (?![\w\.])
  182. </match>
  183. </context>
  184.  
  185. <context id="decimal-number" style-ref="decimal">
  186. <match extended="true">
  187. (?<![\w\.])
  188. [+-]?([1-9][0-9]*|0)
  189. (?![\w\.])
  190. </match>
  191. </context>
  192.  
  193. <context id="lol-block">
  194. <start>HAI</start>
  195. <end>KTHXBYE</end>
  196. <include>
  197. <context sub-pattern="0" where="start" style-ref="keyword"/>
  198. <context sub-pattern="0" where="end" style-ref="keyword"/>
  199. <context ref="cpp-line-comment"/>
  200. <context ref="c-block-comment"/>
  201. <context ref="double-quoted-string"/>
  202. <context ref="keywords"/>
  203. <context ref="operators"/>
  204. <context ref="type"/>
  205. <context ref="boolean"/>
  206. <context ref="float"/>
  207. <context ref="decimal-number"/>
  208. <context ref="null_value"/>
  209. </include>
  210. </context>
  211.  
  212. <replace id="html:embedded-lang-hook" ref="lol-block"/>
  213.  
  214. <context id="lolcode">
  215. <include>
  216. <context ref="lol-block"/>
  217. <context ref="html:html"/>
  218. </include>
  219. </context>
  220.  
  221. </definitions>
  222. </language>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement