1 # ---------------------------------------------------
3 # FORTRAN 90/95 language freeform syntax highlighting template.
4 # Provides syntax highlighting rules for the
5 # FORTRAN programming language.
7 # Based on FORTRAN77 version fortran.syntax
9 # Email: jtheal@renegadelinuxbox.dhs.org
11 # ---------------------------------------------------
13 # Heavily modified by Paul Sheer <psheer@obsidian.co.za>.
14 # Adjusted to Fortran 90 by Norbert Nemec <Norbert@Nemec-online.de>.
19 # keywords at the beginning of line
20 keyword linestart \{0123456789\}\{0123456789\}\{0123456789\}\{0123456789\}\{0123456789\} brightred
21 keyword linestart \{0123456789\}\{0123456789\}\{0123456789\}\{0123456789\} brightred
22 keyword linestart \{0123456789\}\{0123456789\}\{0123456789\} brightred
23 keyword linestart \{0123456789\}\{0123456789\} brightred
24 keyword linestart \{0123456789\} brightred
27 keyword whole ASSIGNMENT white black
28 keyword whole CONTAINS white black
29 keyword whole END white black
30 keyword whole FUNCTION white black
31 keyword whole INTERFACE white black
32 keyword whole INCLUDE white black
33 keyword whole MODULE white black
34 keyword whole OPERATOR white black
35 keyword whole PROGRAM white black
36 keyword whole SUBROUTINE white black
38 # boolean and logical expressions / operators
39 keyword .and. brightred/orange
40 keyword .eq. brightred/orange
41 keyword .eqv. brightred/orange
42 keyword .false. brightred/orange
43 keyword .ge. brightred/orange
44 keyword .gt. brightred/orange
45 keyword .le. brightred/orange
46 keyword .lt. brightred/orange
47 keyword .ne. brightred/orange
48 keyword .neqv. brightred/orange
49 keyword .not. brightred/orange
50 keyword .or. brightred/orange
51 keyword .true. brightred/orange
52 keyword whole lge brightred/orange
53 keyword whole lgt brightred/orange
54 keyword whole lle brightred/orange
55 keyword whole llt brightred/orange
58 keyword whole ALLOCATABLE brightcyan
59 keyword whole BLOCK brightcyan
60 keyword whole CHARACTER brightcyan
61 keyword whole COMMON brightcyan
62 keyword whole COMPLEX brightcyan
63 keyword whole DATA brightcyan
64 keyword whole DIMENSION brightcyan
65 keyword whole DOUBLE brightcyan
66 keyword whole ELEMENTAL brightcyan
67 keyword whole EQUIVALENCE brightcyan
68 keyword whole EXTERNAL brightcyan
69 keyword whole FORMAT brightcyan
70 keyword whole IMPLICIT brightcyan
71 keyword whole INTEGER brightcyan
72 keyword whole INTENT brightcyan
73 keyword whole INTRINSIC brightcyan
74 keyword whole LOGICAL brightcyan
75 keyword whole NAMELIST brightcyan
76 keyword whole NONE brightcyan
77 keyword whole ONLY brightcyan
78 keyword whole OPTIONAL brightcyan
79 keyword whole PARAMETER brightcyan
80 keyword whole POINTER brightcyan
81 keyword whole PRECISION brightcyan
82 keyword whole PRIVATE brightcyan
83 keyword whole PUBLIC brightcyan
84 keyword whole PURE brightcyan
85 keyword whole REAL brightcyan
86 keyword whole SAVE brightcyan
87 keyword whole TYPE brightcyan
88 keyword whole USE brightcyan
90 # general programming syntax
91 keyword whole allocate brightgreen
92 keyword whole assign brightgreen
93 keyword whole call brightgreen
94 keyword whole case brightgreen
95 keyword whole deallocate brightgreen
96 keyword whole default brightgreen
97 keyword whole continue brightgreen
98 keyword whole cycle brightgreen
99 keyword whole do brightgreen
100 keyword whole else brightgreen
101 keyword whole elseif brightgreen
102 keyword whole elsewhere brightgreen
103 keyword whole end brightgreen
104 keyword whole enddo brightgreen
105 keyword whole endif brightgreen
106 keyword whole exit brightgreen
107 keyword whole for brightgreen
108 keyword whole forall brightgreen
109 keyword whole goto brightgreen
110 keyword whole if brightgreen
111 keyword whole nullify brightgreen
112 keyword whole pause brightgreen
113 keyword whole return brightgreen
114 keyword whole select brightgreen
115 keyword whole stop brightgreen
116 keyword whole target brightgreen
117 keyword whole then brightgreen
118 keyword whole to brightgreen
119 keyword whole where brightgreen
120 keyword whole while brightgreen
123 keyword whole entry brightgreen
126 # may have optional equal signs after them: 'keyword ='
127 keyword whole access brightmagenta
128 keyword whole backspace brightmagenta
129 keyword whole blank brightmagenta
130 keyword whole close brightmagenta
131 keyword whole direct brightmagenta
132 keyword whole endfile brightmagenta
133 keyword whole err brightmagenta
134 keyword whole exist brightmagenta
135 keyword whole file brightmagenta
136 keyword whole fmt brightmagenta
137 keyword whole form brightmagenta
138 keyword whole formatted brightmagenta
139 keyword whole inquire brightmagenta
140 keyword whole iostat brightmagenta
141 keyword whole name brightmagenta
142 keyword whole named brightmagenta
143 keyword whole nextrec brightmagenta
144 keyword whole number brightmagenta
145 keyword whole open brightmagenta
146 keyword whole opened brightmagenta
147 keyword whole print brightmagenta
148 keyword whole read brightmagenta
149 keyword whole rec brightmagenta
150 keyword whole recl brightmagenta
151 keyword whole rewind brightmagenta
152 keyword whole sequential brightmagenta
153 keyword whole status brightmagenta
154 keyword whole unformatted brightmagenta
155 keyword whole unit brightmagenta
156 keyword whole write brightmagenta
158 # mathematical functions
159 keyword whole abs yellow
160 keyword whole achar yellow
161 keyword whole acos yellow
162 keyword whole aimag yellow
163 keyword whole aint yellow
164 keyword whole alog yellow
165 keyword whole alog10 yellow
166 keyword whole amax0 yellow
167 keyword whole amax1 yellow
168 keyword whole amin0 yellow
169 keyword whole amin1 yellow
170 keyword whole amod yellow
171 keyword whole anint yellow
172 keyword whole aprime yellow
173 keyword whole asin yellow
174 keyword whole atan yellow
175 keyword whole atan2 yellow
176 keyword whole acos yellow
177 keyword whole cabs yellow
178 keyword whole ceiling yellow
179 keyword whole cexp yellow
180 keyword whole char yellow
181 keyword whole clog yellow
182 keyword whole cmplx yellow
183 keyword whole conjg yellow
184 keyword whole cos yellow
185 keyword whole cosh yellow
186 keyword whole ccos yellow
187 keyword whole csin yellow
188 keyword whole csqrt yellow
189 keyword whole dabs yellow
190 keyword whole dacos yellow
191 keyword whole dasin yellow
192 keyword whole datan yellow
193 keyword whole datan2 yellow
194 keyword whole dble yellow
195 keyword whole dcos yellow
196 keyword whole dcosh yellow
197 keyword whole dfloat yellow
198 keyword whole ddmim yellow
199 keyword whole dexp yellow
200 keyword whole dim yellow
201 keyword whole dint yellow
202 keyword whole dlog yellow
203 keyword whole dlog10 yellow
204 keyword whole dmax1 yellow
205 keyword whole dmin1 yellow
206 keyword whole dmod yellow
207 keyword whole dnint yellow
208 keyword whole dsign yellow
209 keyword whole dsin yellow
210 keyword whole dsinh yellow
211 keyword whole dsqrt yellow
212 keyword whole dtan yellow
213 keyword whole dtanh yellow
214 keyword whole exp yellow
215 keyword whole float yellow
216 keyword whole floor yellow
217 keyword whole iabs yellow
218 keyword whole iachar yellow
219 keyword whole ichar yellow
220 keyword whole idim yellow
221 keyword whole idint yellow
222 keyword whole ifix yellow
223 keyword whole index yellow
224 keyword whole int yellow
225 keyword whole isign yellow
226 keyword whole len yellow
227 keyword whole log yellow
228 keyword whole log10 yellow
229 keyword whole matmul yellow
230 keyword whole max yellow
231 keyword whole max0 yellow
232 keyword whole max1 yellow
233 keyword whole maxval yellow
234 keyword whole min yellow
235 keyword whole min0 yellow
236 keyword whole min1 yellow
237 keyword whole minval yellow
238 keyword whole mod yellow
239 keyword whole nint yellow
240 keyword whole product yellow
241 keyword whole rand yellow
242 keyword whole random_number yellow
243 keyword whole random_seed yellow
244 keyword whole sign yellow
245 keyword whole sin yellow
246 keyword whole sinh yellow
247 keyword whole sngl yellow
248 keyword whole sqrt yellow
249 keyword whole sum yellow
250 keyword whole tan yellow
251 keyword whole tanh yellow
252 keyword whole transpose yellow
254 # operators and syntax elements
268 # comments and quotes
272 #context &\n \n black cyan
273 keyword &\n black cyan
275 context format( ) green