PageRenderTime 43ms CodeModel.GetById 17ms RepoModel.GetById 0ms app.codeStats 0ms

/jEdit/tags/jedit-4-3-pre5/modes/fortran.xml

#
XML | 247 lines | 213 code | 7 blank | 27 comment | 0 complexity | 183525f319851a422b53be061e10f3a2 MD5 | raw file
Possible License(s): BSD-3-Clause, AGPL-1.0, Apache-2.0, LGPL-2.0, LGPL-3.0, GPL-2.0, CC-BY-SA-3.0, LGPL-2.1, GPL-3.0, MPL-2.0-no-copyleft-exception, IPL-1.0
  1. <?xml version="1.0"?>
  2. <!DOCTYPE MODE SYSTEM "xmode.dtd">
  3. <!-- FORTRAN edit mode
  4. Version 1.1
  5. April 21, 2002
  6. -->
  7. <!-- This is a mode for FORTRAN source files. In general, this supports
  8. common features of the F90 specification. This may however contain some
  9. platform or vendor specific keywords (in paticular COMPAQ(Digital) FORTRAN).
  10. -->
  11. <!-- Suggested catalog file entry:
  12. <MODE NAME="FORTRAN" FILE="FORTRAN.xml"
  13. FILE_NAME_GLOB="*.{f,for,fort,f77,f90}" />
  14. -->
  15. <MODE>
  16. <PROPS>
  17. <PROPERTY NAME="blockComment" VALUE="C" />
  18. <PROPERTY NAME="wordBreakChars" VALUE=",+-=&lt;&gt;/?^&amp;*" />
  19. <PROPERTY NAME="indentNextLine"
  20. VALUE="\s*((if\s*\(.*\)\s*then|else\s*|do\s*)*)" />
  21. </PROPS>
  22. <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="FALSE">
  23. <!-- In fixed form, column 72 is the last column parsed, unless the
  24. \extend_source option is invoked -->
  25. <!-- TERMINATE AT_CHAR="72" / -->
  26. <!-- comment either !, C, or * can be used as a comment in the first column
  27. in either free or fixed form FORTRAN-->
  28. <EOL_SPAN TYPE="COMMENT1" AT_LINE_START="TRUE">C</EOL_SPAN>
  29. <EOL_SPAN TYPE="COMMENT1" AT_LINE_START="TRUE">!</EOL_SPAN>
  30. <EOL_SPAN TYPE="COMMENT1" AT_LINE_START="TRUE">*</EOL_SPAN>
  31. <EOL_SPAN TYPE="COMMENT1">!</EOL_SPAN>
  32. <EOL_SPAN TYPE="COMMENT2" AT_LINE_START="TRUE">D</EOL_SPAN>
  33. <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">
  34. <BEGIN>"</BEGIN>
  35. <END>"</END>
  36. </SPAN>
  37. <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">
  38. <BEGIN>'</BEGIN>
  39. <END>'</END>
  40. </SPAN>
  41. <!-- Highlighted Operators -->
  42. <SEQ TYPE="OPERATOR">&lt;=</SEQ>
  43. <SEQ TYPE="OPERATOR">&gt;=</SEQ>
  44. <SEQ TYPE="OPERATOR">&gt;</SEQ>
  45. <SEQ TYPE="OPERATOR">&lt;</SEQ>
  46. <SEQ TYPE="OPERATOR">&amp;</SEQ>
  47. <SEQ TYPE="OPERATOR">/=</SEQ>
  48. <SEQ TYPE="OPERATOR">==</SEQ>
  49. <SEQ TYPE="OPERATOR">.lt.</SEQ>
  50. <SEQ TYPE="OPERATOR">.gt.</SEQ>
  51. <SEQ TYPE="OPERATOR">.eq.</SEQ>
  52. <SEQ TYPE="OPERATOR">.ne.</SEQ>
  53. <SEQ TYPE="OPERATOR">.le.</SEQ>
  54. <SEQ TYPE="OPERATOR">.ge.</SEQ>
  55. <SEQ TYPE="OPERATOR">.AND.</SEQ>
  56. <SEQ TYPE="OPERATOR">.OR.</SEQ>
  57. <KEYWORDS>
  58. <!-- unclassified keywords -->
  59. <KEYWORD1>INCLUDE</KEYWORD1>
  60. <!-- Program units and calling them -->
  61. <KEYWORD1>PROGRAM</KEYWORD1>
  62. <KEYWORD1>MODULE</KEYWORD1>
  63. <KEYWORD1>SUBROUTINE</KEYWORD1>
  64. <KEYWORD1>FUNCTION</KEYWORD1>
  65. <KEYWORD1>CONTAINS</KEYWORD1>
  66. <KEYWORD1>USE</KEYWORD1>
  67. <KEYWORD1>CALL</KEYWORD1>
  68. <KEYWORD1>RETURN</KEYWORD1>
  69. <!-- data types, declaration, and allocation keywords -->
  70. <KEYWORD1>IMPLICIT</KEYWORD1>
  71. <KEYWORD1>EXPLICIT</KEYWORD1>
  72. <KEYWORD1>NONE</KEYWORD1>
  73. <KEYWORD1>DATA</KEYWORD1>
  74. <KEYWORD1>PARAMETER</KEYWORD1>
  75. <KEYWORD1>ALLOCATE</KEYWORD1>
  76. <KEYWORD1>ALLOCATABLE</KEYWORD1>
  77. <KEYWORD1>ALLOCATED</KEYWORD1>
  78. <KEYWORD1>DEALLOCATE</KEYWORD1>
  79. <KEYWORD1>INTEGER</KEYWORD1>
  80. <KEYWORD1>REAL</KEYWORD1>
  81. <KEYWORD1>DOUBLE</KEYWORD1>
  82. <KEYWORD1>PRECISION</KEYWORD1>
  83. <KEYWORD1>COMPLEX</KEYWORD1>
  84. <KEYWORD1>LOGICAL</KEYWORD1>
  85. <KEYWORD1>CHARACTER</KEYWORD1>
  86. <KEYWORD1>DIMENSION</KEYWORD1>
  87. <KEYWORD1>KIND</KEYWORD1>
  88. <!-- FORTRAN Statements -->
  89. <KEYWORD1>CASE</KEYWORD1>
  90. <KEYWORD1>SELECT</KEYWORD1>
  91. <KEYWORD1>DEFAULT</KEYWORD1>
  92. <KEYWORD1>CONTINUE</KEYWORD1>
  93. <KEYWORD1>CYCLE</KEYWORD1>
  94. <KEYWORD1>DO</KEYWORD1>
  95. <KEYWORD1>WHILE</KEYWORD1>
  96. <KEYWORD1>ELSE</KEYWORD1>
  97. <KEYWORD1>IF</KEYWORD1>
  98. <KEYWORD1>ELSEIF</KEYWORD1>
  99. <KEYWORD1>THEN</KEYWORD1>
  100. <KEYWORD1>ELSEWHERE</KEYWORD1>
  101. <KEYWORD1>END</KEYWORD1>
  102. <KEYWORD1>ENDIF</KEYWORD1>
  103. <KEYWORD1>ENDDO</KEYWORD1>
  104. <KEYWORD1>FORALL</KEYWORD1>
  105. <KEYWORD1>WHERE</KEYWORD1>
  106. <KEYWORD1>EXIT</KEYWORD1>
  107. <KEYWORD1>GOTO</KEYWORD1>
  108. <KEYWORD1>PAUSE</KEYWORD1>
  109. <KEYWORD1>STOP</KEYWORD1>
  110. <!-- i/o keywords -->
  111. <KEYWORD1>BACKSPACE</KEYWORD1>
  112. <KEYWORD1>CLOSE</KEYWORD1>
  113. <KEYWORD1>ENDFILE</KEYWORD1>
  114. <KEYWORD1>INQUIRE</KEYWORD1>
  115. <KEYWORD1>OPEN</KEYWORD1>
  116. <KEYWORD1>PRINT</KEYWORD1>
  117. <KEYWORD1>READ</KEYWORD1>
  118. <KEYWORD1>REWIND</KEYWORD1>
  119. <KEYWORD1>WRITE</KEYWORD1>
  120. <KEYWORD1>FORMAT</KEYWORD1>
  121. <!-- Type conversion and utility functions -->
  122. <KEYWORD1>AIMAG</KEYWORD1>
  123. <KEYWORD1>AINT</KEYWORD1>
  124. <KEYWORD1>AMAX0</KEYWORD1>
  125. <KEYWORD1>AMIN0</KEYWORD1>
  126. <KEYWORD1>ANINT</KEYWORD1>
  127. <KEYWORD1>CEILING</KEYWORD1>
  128. <KEYWORD1>CMPLX</KEYWORD1>
  129. <KEYWORD1>CONJG</KEYWORD1>
  130. <KEYWORD1>DBLE</KEYWORD1>
  131. <KEYWORD1>DCMPLX</KEYWORD1>
  132. <KEYWORD1>DFLOAT</KEYWORD1>
  133. <KEYWORD1>DIM</KEYWORD1>
  134. <KEYWORD1>DPROD</KEYWORD1>
  135. <KEYWORD1>FLOAT</KEYWORD1>
  136. <KEYWORD1>FLOOR</KEYWORD1>
  137. <KEYWORD1>IFIX</KEYWORD1>
  138. <KEYWORD1>IMAG</KEYWORD1>
  139. <KEYWORD1>INT</KEYWORD1>
  140. <KEYWORD1>LOGICAL</KEYWORD1>
  141. <KEYWORD1>MODULO</KEYWORD1>
  142. <KEYWORD1>NINT</KEYWORD1>
  143. <KEYWORD1>REAL</KEYWORD1>
  144. <KEYWORD1>SIGN</KEYWORD1>
  145. <KEYWORD1>SNGL</KEYWORD1>
  146. <KEYWORD1>TRANSFER</KEYWORD1>
  147. <KEYWORD1>ZEXT</KEYWORD1>
  148. <!-- More Functions -->
  149. <KEYWORD1>ABS</KEYWORD1>
  150. <KEYWORD1>ACOS</KEYWORD1>
  151. <KEYWORD1>AIMAG</KEYWORD1>
  152. <KEYWORD1>AINT</KEYWORD1>
  153. <KEYWORD1>ALOG</KEYWORD1>
  154. <KEYWORD1>ALOG10</KEYWORD1>
  155. <KEYWORD1>AMAX0</KEYWORD1>
  156. <KEYWORD1>AMAX1</KEYWORD1>
  157. <KEYWORD1>AMIN0</KEYWORD1>
  158. <KEYWORD1>AMIN1</KEYWORD1>
  159. <KEYWORD1>AMOD</KEYWORD1>
  160. <KEYWORD1>ANINT</KEYWORD1>
  161. <KEYWORD1>ASIN</KEYWORD1>
  162. <KEYWORD1>ATAN</KEYWORD1>
  163. <KEYWORD1>ATAN2</KEYWORD1>
  164. <KEYWORD1>CABS</KEYWORD1>
  165. <KEYWORD1>CCOS</KEYWORD1>
  166. <KEYWORD1>CHAR</KEYWORD1>
  167. <KEYWORD1>CLOG</KEYWORD1>
  168. <KEYWORD1>CMPLX</KEYWORD1>
  169. <KEYWORD1>CONJG</KEYWORD1>
  170. <KEYWORD1>COS</KEYWORD1>
  171. <KEYWORD1>COSH</KEYWORD1>
  172. <KEYWORD1>CSIN</KEYWORD1>
  173. <KEYWORD1>CSQRT</KEYWORD1>
  174. <KEYWORD1>DABS</KEYWORD1>
  175. <KEYWORD1>DACOS</KEYWORD1>
  176. <KEYWORD1>DASIN</KEYWORD1>
  177. <KEYWORD1>DATAN</KEYWORD1>
  178. <KEYWORD1>DATAN2</KEYWORD1>
  179. <KEYWORD1>DBLE</KEYWORD1>
  180. <KEYWORD1>DCOS</KEYWORD1>
  181. <KEYWORD1>DCOSH</KEYWORD1>
  182. <KEYWORD1>DDIM</KEYWORD1>
  183. <KEYWORD1>DEXP</KEYWORD1>
  184. <KEYWORD1>DIM</KEYWORD1>
  185. <KEYWORD1>DINT</KEYWORD1>
  186. <KEYWORD1>DLOG</KEYWORD1>
  187. <KEYWORD1>DLOG10</KEYWORD1>
  188. <KEYWORD1>DMAX1</KEYWORD1>
  189. <KEYWORD1>DMIN1</KEYWORD1>
  190. <KEYWORD1>DMOD</KEYWORD1>
  191. <KEYWORD1>DNINT</KEYWORD1>
  192. <KEYWORD1>DPROD</KEYWORD1>
  193. <KEYWORD1>DREAL</KEYWORD1>
  194. <KEYWORD1>DSIGN</KEYWORD1>
  195. <KEYWORD1>DSIN</KEYWORD1>
  196. <KEYWORD1>DSINH</KEYWORD1>
  197. <KEYWORD1>DSQRT</KEYWORD1>
  198. <KEYWORD1>DTAN</KEYWORD1>
  199. <KEYWORD1>DTANH</KEYWORD1>
  200. <KEYWORD1>EXP</KEYWORD1>
  201. <KEYWORD1>FLOAT</KEYWORD1>
  202. <KEYWORD1>IABS</KEYWORD1>
  203. <KEYWORD1>ICHAR</KEYWORD1>
  204. <KEYWORD1>IDIM</KEYWORD1>
  205. <KEYWORD1>IDINT</KEYWORD1>
  206. <KEYWORD1>IDNINT</KEYWORD1>
  207. <KEYWORD1>IFIX</KEYWORD1>
  208. <KEYWORD1>INDEX</KEYWORD1>
  209. <KEYWORD1>INT</KEYWORD1>
  210. <KEYWORD1>ISIGN</KEYWORD1>
  211. <KEYWORD1>LEN</KEYWORD1>
  212. <KEYWORD1>LGE</KEYWORD1>
  213. <KEYWORD1>LGT</KEYWORD1>
  214. <KEYWORD1>LLE</KEYWORD1>
  215. <KEYWORD1>LLT</KEYWORD1>
  216. <KEYWORD1>LOG</KEYWORD1>
  217. <KEYWORD1>LOG10</KEYWORD1>
  218. <KEYWORD1>MAX</KEYWORD1>
  219. <KEYWORD1>MAX0</KEYWORD1>
  220. <KEYWORD1>MAX1</KEYWORD1>
  221. <KEYWORD1>MIN</KEYWORD1>
  222. <KEYWORD1>MIN0</KEYWORD1>
  223. <KEYWORD1>MIN1</KEYWORD1>
  224. <KEYWORD1>MOD</KEYWORD1>
  225. <KEYWORD1>NINT</KEYWORD1>
  226. <KEYWORD1>REAL</KEYWORD1>
  227. <KEYWORD1>SIGN</KEYWORD1>
  228. <KEYWORD1>SIN</KEYWORD1>
  229. <KEYWORD1>SINH</KEYWORD1>
  230. <KEYWORD1>SNGL</KEYWORD1>
  231. <KEYWORD1>SQRT</KEYWORD1>
  232. <KEYWORD1>TAN</KEYWORD1>
  233. <KEYWORD1>TANH</KEYWORD1>
  234. <!-- logical values -->
  235. <KEYWORD1>.false.</KEYWORD1>
  236. <KEYWORD1>.true.</KEYWORD1>
  237. </KEYWORDS>
  238. </RULES>
  239. </MODE>