Variable: fortran-font-lock-keywords-3
fortran-font-lock-keywords-3 is a variable defined in fortran.el.gz.
Value
(("\\<\\(block[ ]*data\\|call\\|entry\\|function\\|program\\|subroutine\\)\\>[ ]*\\(\\sw+\\)?"
(1 font-lock-keyword-face)
(2 font-lock-function-name-face nil t))
("\\<\\(byte\\|c\\(?:haracter\\|om\\(?:mon\\|plex\\)\\)\\|d\\(?:ata\\|imension\\|ouble[ ]*\\(?:complex\\|precision\\)\\)\\|e\\(?:nd[ ]*\\(?:map\\|structure\\|union\\)\\|quivalence\\|xternal\\)\\|i\\(?:mplicit[ ]*\\(?:byte\\|c\\(?:haracter\\|omplex\\)\\|double[ ]*\\(?:complex\\|precision\\)\\|integer\\|logical\\|none\\|real\\)\\|nt\\(?:eger\\|rinsic\\)\\)\\|logical\\|map\\|none\\|parameter\\|re\\(?:al\\|cord\\)\\|s\\(?:\\(?:av\\|tructur\\)e\\)\\|union\\)\\>[ (/]*\\(\\*\\)?"
(1 font-lock-type-face)
(fortran-match-and-skip-declaration
(condition-case nil
(and
(match-beginning 2)
(forward-sexp)
(forward-sexp))
(error nil))
nil
(1 font-lock-variable-name-face nil t)))
(", *\\(e\\(nd\\|rr\\)\\)\\> *\\(= *\\([0-9]+\\)\\)?"
(1 font-lock-keyword-face)
(4 font-lock-constant-face nil t))
("^ \\{5\\}\\([^ 0\n]\\)" 1 font-lock-string-face)
("^ \\([1-9]\\)" 1 font-lock-string-face)
("^[ ]*#.*"
(0 font-lock-preprocessor-face t))
"\\<\\(backspace\\|c\\(?:\\(?:as\\|los\\|ontinu\\|ycl\\)e\\)\\|e\\(?:lse\\(?:if\\|where\\)?\\|nd\\(?:do\\|if\\)?\\|xit\\)\\|format\\|i\\(?:f\\|n\\(?:\\(?:clud\\|quir\\)e\\)\\)\\|open\\|print\\|re\\(?:ad\\|turn\\|wind\\)\\|s\\(?:elect\\|top\\)\\|then\\|w\\(?:\\(?:h\\(?:er\\|il\\)\\|rit\\)e\\)\\)\\>" "\\.\\(and\\|eqv?\\|false\\|g[et]\\|l[et]\\|n\\(?:e\\(?:qv\\)?\\|ot\\)\\|or\\|true\\)\\."
("\\<\\(do\\|go *to\\)\\>[ ]*\\([0-9]+\\)?"
(1 font-lock-keyword-face)
(2 font-lock-constant-face nil t))
("^ *\\([0-9]+\\)" . font-lock-constant-face))
Documentation
Gaudy level highlighting for Fortran mode.
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/fortran.el.gz
(defvar fortran-font-lock-keywords-3
(append
fortran-font-lock-keywords-1
;; All type specifiers plus their declared items.
(list
(list (concat fortran-type-types "[ \t(/]*\\(\\*\\)?")
;; Type specifier.
'(1 font-lock-type-face)
;; Declaration item (or just /.../ block name).
`(fortran-match-and-skip-declaration
;; Start after any *(...) expression.
(condition-case nil
(and (match-beginning ,(1+ (regexp-opt-depth
fortran-type-types)))
(forward-sexp)
(forward-sexp))
(error nil))
;; No need to clean up.
nil
;; Fontify as a variable name, functions fontified elsewhere.
(1 font-lock-variable-name-face nil t))))
;; Things extra to `fortran-font-lock-keywords-3' (must be done first).
(list
;; Goto-like `err=label'/`end=label' in read/write statements.
'(", *\\(e\\(nd\\|rr\\)\\)\\> *\\(= *\\([0-9]+\\)\\)?"
(1 font-lock-keyword-face) (4 font-lock-constant-face nil t))
;; Standard continuation character and in a TAB-formatted line.
'("^ \\{5\\}\\([^ 0\n]\\)" 1 font-lock-string-face)
'("^\t\\([1-9]\\)" 1 font-lock-string-face))
`((,fortran-directive-re (0 font-lock-preprocessor-face t)))
;; `fortran-font-lock-keywords-2' without types (see above).
(cdr (nthcdr (length fortran-font-lock-keywords-1)
fortran-font-lock-keywords-2)))
"Gaudy level highlighting for Fortran mode.")