mirror of
https://github.com/MidnightCommander/mc
synced 2024-12-23 04:46:55 +03:00
aeab4a933e
beginning of line. Recognize " +" as continuation. Move all "linestart" keywords earlier to avoid more conflicts.
245 lines
9.0 KiB
YAML
245 lines
9.0 KiB
YAML
# ---------------------------------------------------
|
|
# fortran.syntax
|
|
# FORTRAN language syntax highlighting template.
|
|
# Provides syntax highlighting rules for the
|
|
# FORTRAN programming language.
|
|
#
|
|
# Author: John Theal
|
|
# Email: jtheal@renegadelinuxbox.dhs.org
|
|
# December 7, 1999
|
|
# ---------------------------------------------------
|
|
|
|
# Heavily modified by Paul Sheer <psheer@obsidian.co.za>.
|
|
|
|
context default
|
|
# keywords at the beginning of line
|
|
keyword linestart ! black/0 yellow/24
|
|
keyword linestart \* black/0 yellow/24
|
|
keyword linestart c black/0 yellow/24
|
|
keyword linestart C black/0 yellow/24
|
|
|
|
keyword linestart \s\s\s\s\s\* yellow/24 red/9
|
|
keyword linestart \s\s\s\s\s\+ yellow/24 red/9
|
|
|
|
keyword linestart \s\s\s\s\s\s black/0 brightcyan/blue3
|
|
|
|
keyword linestart 0\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\s white/26 brightcyan/2
|
|
keyword linestart 1\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\s white/26 brightcyan/2
|
|
keyword linestart 2\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\s white/26 brightcyan/2
|
|
keyword linestart 3\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\s white/26 brightcyan/2
|
|
keyword linestart 4\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\s white/26 brightcyan/2
|
|
keyword linestart 5\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\s white/26 brightcyan/2
|
|
keyword linestart 6\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\s white/26 brightcyan/2
|
|
keyword linestart 7\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\s white/26 brightcyan/2
|
|
keyword linestart 8\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\s white/26 brightcyan/2
|
|
keyword linestart 9\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\s white/26 brightcyan/2
|
|
|
|
keyword linestart \s\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\s white/26 brightcyan/2
|
|
keyword linestart \s\s\{0123456789\s\}\{0123456789\s\}\{0123456789\s\}\s white/26 brightcyan/2
|
|
keyword linestart \s\s\s\{0123456789\s\}\{0123456789\s\}\s white/26 brightcyan/2
|
|
keyword linestart \s\s\s\s\{0123456789\s\}\s white/26 brightcyan/2
|
|
|
|
# boolean and logical expressions / operators
|
|
keyword .and. brightred/orange
|
|
keyword .eq. brightred/orange
|
|
keyword .eqv. brightred/orange
|
|
keyword .false. brightred/orange
|
|
keyword .ge. brightred/orange
|
|
keyword .gt. brightred/orange
|
|
keyword .le. brightred/orange
|
|
keyword .lt. brightred/orange
|
|
keyword .ne. brightred/orange
|
|
keyword .neqv. brightred/orange
|
|
keyword .not. brightred/orange
|
|
keyword .or. brightred/orange
|
|
keyword .true. brightred/orange
|
|
keyword whole lge brightred/orange
|
|
keyword whole lgt brightred/orange
|
|
keyword whole lle brightred/orange
|
|
keyword whole llt brightred/orange
|
|
|
|
# declarations
|
|
keyword whole block brightcyan/17
|
|
keyword whole character brightcyan/17
|
|
keyword whole common brightcyan/17
|
|
keyword whole complex brightcyan/17
|
|
keyword whole data brightcyan/17
|
|
keyword whole dimension brightcyan/17
|
|
keyword whole double brightcyan/17
|
|
keyword whole external brightcyan/17
|
|
keyword whole format brightcyan/17
|
|
keyword whole implicit brightcyan/17
|
|
keyword whole integer brightcyan/17
|
|
keyword whole intrinsic brightcyan/17
|
|
keyword whole logical brightcyan/17
|
|
keyword whole none brightcyan/17
|
|
keyword whole parameter brightcyan/17
|
|
keyword whole precision brightcyan/17
|
|
keyword whole real brightcyan/17
|
|
|
|
# general programming syntax
|
|
keyword whole assign brightgreen/15
|
|
keyword whole call brightgreen/15
|
|
keyword whole continue brightgreen/15
|
|
keyword whole do brightgreen/15
|
|
keyword whole else brightgreen/15
|
|
keyword whole elseif brightgreen/15
|
|
keyword whole end brightgreen/15
|
|
keyword whole enddo brightgreen/15
|
|
keyword whole endif brightgreen/15
|
|
keyword whole for brightgreen/15
|
|
keyword whole goto brightgreen/15
|
|
keyword whole if brightgreen/15
|
|
keyword whole pause brightgreen/15
|
|
keyword whole return brightgreen/15
|
|
keyword whole stop brightgreen/15
|
|
keyword whole then brightgreen/15
|
|
keyword whole to brightgreen/15
|
|
keyword whole while brightgreen/15
|
|
|
|
# headers
|
|
keyword whole entry brightgreen/15
|
|
keyword whole function yellow/21
|
|
keyword whole program yellow/21
|
|
keyword whole subroutine yellow/21
|
|
|
|
# I/O functions
|
|
# may have optional equal signs after them: 'keyword ='
|
|
keyword whole access brightmagenta/20
|
|
keyword whole backspace brightmagenta/20
|
|
keyword whole blank brightmagenta/20
|
|
keyword whole close brightmagenta/20
|
|
keyword whole direct brightmagenta/20
|
|
keyword whole endfile brightmagenta/20
|
|
keyword whole err brightmagenta/20
|
|
keyword whole exist brightmagenta/20
|
|
keyword whole file brightmagenta/20
|
|
keyword whole fmt brightmagenta/20
|
|
keyword whole form brightmagenta/20
|
|
keyword whole formatted brightmagenta/20
|
|
keyword whole inquire brightmagenta/20
|
|
keyword whole iostat brightmagenta/20
|
|
keyword whole name brightmagenta/20
|
|
keyword whole named brightmagenta/20
|
|
keyword whole nextrec brightmagenta/20
|
|
keyword whole number brightmagenta/20
|
|
keyword whole open brightmagenta/20
|
|
keyword whole opened brightmagenta/20
|
|
keyword whole print brightmagenta/20
|
|
keyword whole read brightmagenta/20
|
|
keyword whole rec brightmagenta/20
|
|
keyword whole recl brightmagenta/20
|
|
keyword whole rewind brightmagenta/20
|
|
keyword whole sequential brightmagenta/20
|
|
keyword whole status brightmagenta/20
|
|
keyword whole unformatted brightmagenta/20
|
|
keyword whole unit brightmagenta/20
|
|
keyword whole write brightmagenta/20
|
|
|
|
# mathematical functions
|
|
keyword whole abs yellow/24
|
|
keyword whole acos yellow/24
|
|
keyword whole aimag yellow/24
|
|
keyword whole aint yellow/24
|
|
keyword whole alog yellow/24
|
|
keyword whole alog10 yellow/24
|
|
keyword whole amax0 yellow/24
|
|
keyword whole amax1 yellow/24
|
|
keyword whole amin0 yellow/24
|
|
keyword whole amin1 yellow/24
|
|
keyword whole amod yellow/24
|
|
keyword whole anint yellow/24
|
|
keyword whole aprime yellow/24
|
|
keyword whole asin yellow/24
|
|
keyword whole atan yellow/24
|
|
keyword whole atan2 yellow/24
|
|
keyword whole acos yellow/24
|
|
keyword whole cabs yellow/24
|
|
keyword whole cexp yellow/24
|
|
keyword whole char yellow/24
|
|
keyword whole clog yellow/24
|
|
keyword whole cmplx yellow/24
|
|
keyword whole conjg yellow/24
|
|
keyword whole cos yellow/24
|
|
keyword whole cosh yellow/24
|
|
keyword whole ccos yellow/24
|
|
keyword whole csin yellow/24
|
|
keyword whole csqrt yellow/24
|
|
keyword whole dabs yellow/24
|
|
keyword whole dacos yellow/24
|
|
keyword whole dasin yellow/24
|
|
keyword whole datan yellow/24
|
|
keyword whole datan2 yellow/24
|
|
keyword whole dble yellow/24
|
|
keyword whole dcos yellow/24
|
|
keyword whole dcosh yellow/24
|
|
keyword whole dfloat yellow/24
|
|
keyword whole ddmim yellow/24
|
|
keyword whole dexp yellow/24
|
|
keyword whole dim yellow/24
|
|
keyword whole dint yellow/24
|
|
keyword whole dlog yellow/24
|
|
keyword whole dlog10 yellow/24
|
|
keyword whole dmax1 yellow/24
|
|
keyword whole dmin1 yellow/24
|
|
keyword whole dmod yellow/24
|
|
keyword whole dnint yellow/24
|
|
keyword whole dsign yellow/24
|
|
keyword whole dsin yellow/24
|
|
keyword whole dsinh yellow/24
|
|
keyword whole dsqrt yellow/24
|
|
keyword whole dtan yellow/24
|
|
keyword whole dtanh yellow/24
|
|
keyword whole equivalence yellow/24
|
|
keyword whole exp yellow/24
|
|
keyword whole float yellow/24
|
|
keyword whole iabs yellow/24
|
|
keyword whole ichar yellow/24
|
|
keyword whole idim yellow/24
|
|
keyword whole idint yellow/24
|
|
keyword whole ifix yellow/24
|
|
keyword whole index yellow/24
|
|
keyword whole int yellow/24
|
|
keyword whole isign yellow/24
|
|
keyword whole len yellow/24
|
|
keyword whole log yellow/24
|
|
keyword whole log10 yellow/24
|
|
keyword whole max yellow/24
|
|
keyword whole max0 yellow/24
|
|
keyword whole max1 yellow/24
|
|
keyword whole min yellow/24
|
|
keyword whole min0 yellow/24
|
|
keyword whole min1 yellow/24
|
|
keyword whole mod yellow/24
|
|
keyword whole rand yellow/24
|
|
keyword whole sign yellow/24
|
|
keyword whole sin yellow/24
|
|
keyword whole sinh yellow/24
|
|
keyword whole sngl yellow/24
|
|
keyword whole sqrt yellow/24
|
|
keyword whole tan yellow/24
|
|
keyword whole tanh yellow/24
|
|
|
|
# operators and syntax elements
|
|
keyword ( brightcyan/15
|
|
keyword ) brightcyan/15
|
|
keyword , brightcyan/14
|
|
keyword \+ yellow/24
|
|
keyword - yellow/24
|
|
keyword \* yellow/24
|
|
keyword / yellow/24
|
|
keyword = yellow/24
|
|
|
|
# comments and quotes
|
|
keyword '*' green/6
|
|
|
|
context exclusive linestart ! \n brown/22
|
|
spellcheck
|
|
context exclusive linestart \* \n brown/22
|
|
spellcheck
|
|
context exclusive linestart c \n brown/22
|
|
spellcheck
|
|
context exclusive linestart C \n brown/22
|
|
spellcheck
|
|
|