/jEdit/tags/jedit-4-0-pre9/modes/ruby.xml

# · XML · 138 lines · 135 code · 2 blank · 1 comment · 0 complexity · 3055c0fdc909424096261eba7fe44a4a MD5 · raw file

  1. <?xml version="1.0"?>
  2. <!DOCTYPE MODE SYSTEM "xmode.dtd">
  3. <!-- Ruby mode by Ian Maclean -->
  4. <MODE>
  5. <PROPS>
  6. <PROPERTY NAME="indentOpenBrackets" VALUE="{" />
  7. <PROPERTY NAME="indentCloseBrackets" VALUE="}" />
  8. <PROPERTY NAME="commentStart" VALUE="=begin" />
  9. <PROPERTY NAME="commentEnd" VALUE="=end" />
  10. <PROPERTY NAME="lineComment" VALUE="#" />
  11. </PROPS>
  12. <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">
  13. <!-- whitespace: (space and tab) -->
  14. <WHITESPACE> </WHITESPACE>
  15. <WHITESPACE> </WHITESPACE>
  16. <!-- Ruby comment (Inline Documetation ) -->
  17. <SPAN TYPE="COMMENT2">
  18. <BEGIN>=begin</BEGIN>
  19. <END>=end</END>
  20. </SPAN>
  21. <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">
  22. <BEGIN>"</BEGIN>
  23. <END>"</END>
  24. </SPAN>
  25. <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">
  26. <BEGIN>'</BEGIN>
  27. <END>'</END>
  28. </SPAN>
  29. <!-- Std Comment -->
  30. <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>
  31. <!-- Not Operators but like the syntak hightligh to match operators -->
  32. <SEQ TYPE="OPERATOR">{</SEQ>
  33. <SEQ TYPE="OPERATOR">}</SEQ>
  34. <SEQ TYPE="OPERATOR">(</SEQ>
  35. <SEQ TYPE="OPERATOR">)</SEQ>
  36. <!-- Arithmetic operators -->
  37. <SEQ TYPE="OPERATOR">::</SEQ>
  38. <SEQ TYPE="OPERATOR">===</SEQ>
  39. <SEQ TYPE="OPERATOR">=</SEQ>
  40. <SEQ TYPE="OPERATOR">&gt;&gt;</SEQ>
  41. <SEQ TYPE="OPERATOR">&lt;&lt;</SEQ>
  42. <SEQ TYPE="OPERATOR">&lt;=</SEQ>
  43. <SEQ TYPE="OPERATOR">+</SEQ>
  44. <SEQ TYPE="OPERATOR">-</SEQ>
  45. <SEQ TYPE="OPERATOR">/</SEQ>
  46. <SEQ TYPE="OPERATOR">**</SEQ>
  47. <SEQ TYPE="OPERATOR">*</SEQ>
  48. <SEQ TYPE="OPERATOR">%</SEQ>
  49. <!-- Logical Operators -->
  50. <SEQ TYPE="OPERATOR">&amp;</SEQ>
  51. <SEQ TYPE="OPERATOR">|</SEQ>
  52. <SEQ TYPE="OPERATOR">!</SEQ>
  53. <SEQ TYPE="OPERATOR">&gt;</SEQ>
  54. <SEQ TYPE="OPERATOR">&lt;</SEQ>
  55. <SEQ TYPE="OPERATOR">^</SEQ>
  56. <SEQ TYPE="OPERATOR">~</SEQ>
  57. <!--Range operators -->
  58. <SEQ TYPE="OPERATOR">...</SEQ>
  59. <SEQ TYPE="OPERATOR">..</SEQ>
  60. <!-- Null Exclusions -->
  61. <SEQ TYPE="NULL">.</SEQ>
  62. <SEQ TYPE="NULL">,</SEQ>
  63. <SEQ TYPE="NULL">;</SEQ>
  64. <SEQ TYPE="OPERATOR">]</SEQ>
  65. <SEQ TYPE="OPERATOR">[</SEQ>
  66. <SEQ TYPE="OPERATOR">?</SEQ>
  67. <MARK_PREVIOUS TYPE="LABEL" EXCLUDE_MATCH="TRUE"
  68. AT_LINE_START="TRUE">:</MARK_PREVIOUS>
  69. <SEQ TYPE="OPERATOR">:</SEQ>
  70. <KEYWORDS IGNORE_CASE="FALSE">
  71. <KEYWORD1>BEGIN</KEYWORD1>
  72. <KEYWORD1>END</KEYWORD1>
  73. <KEYWORD1>alias</KEYWORD1>
  74. <KEYWORD1>and</KEYWORD1>
  75. <KEYWORD1>begin</KEYWORD1>
  76. <KEYWORD1>break</KEYWORD1>
  77. <KEYWORD1>case</KEYWORD1>
  78. <KEYWORD1>class</KEYWORD1>
  79. <KEYWORD1>def</KEYWORD1>
  80. <KEYWORD1>defined</KEYWORD1>
  81. <KEYWORD1>do</KEYWORD1>
  82. <KEYWORD1>else</KEYWORD1>
  83. <KEYWORD1>elsif</KEYWORD1>
  84. <KEYWORD1>end</KEYWORD1>
  85. <KEYWORD1>ensure</KEYWORD1>
  86. <KEYWORD1>for</KEYWORD1>
  87. <KEYWORD1>if</KEYWORD1>
  88. <KEYWORD1>in</KEYWORD1>
  89. <KEYWORD1>module</KEYWORD1>
  90. <KEYWORD1>next</KEYWORD1>
  91. <KEYWORD1>elsif</KEYWORD1>
  92. <KEYWORD1>nil</KEYWORD1>
  93. <KEYWORD1>or</KEYWORD1>
  94. <KEYWORD1>redo</KEYWORD1>
  95. <KEYWORD1>rescue</KEYWORD1>
  96. <KEYWORD1>retry</KEYWORD1>
  97. <KEYWORD1>return</KEYWORD1>
  98. <KEYWORD1>then</KEYWORD1>
  99. <KEYWORD1>undef</KEYWORD1>
  100. <KEYWORD1>unless</KEYWORD1>
  101. <KEYWORD1>until</KEYWORD1>
  102. <KEYWORD1>when</KEYWORD1>
  103. <KEYWORD1>while</KEYWORD1>
  104. <KEYWORD1>yield</KEYWORD1>
  105. <!-- Keyword 2's -->
  106. <KEYWORD2>require</KEYWORD2>
  107. <KEYWORD2>include</KEYWORD2>
  108. <!--
  109. <KEYWORD3>short</KEYWORD3>
  110. <KEYWORD3>void</KEYWORD3> -->
  111. <OPERATOR>not</OPERATOR>
  112. <LITERAL2>super</LITERAL2>
  113. <LITERAL2>self</LITERAL2>
  114. <LITERAL2>false</LITERAL2>
  115. <LITERAL2>true</LITERAL2>
  116. <LITERAL2>__FILE__</LITERAL2>
  117. <LITERAL2>__LINE__</LITERAL2>
  118. </KEYWORDS>
  119. </RULES>
  120. </MODE>