From: Glenn Morris Date: Thu, 21 Jun 2012 19:31:49 +0000 (-0400) Subject: Add some f90 preprocessor font-lock (bug#10499) X-Git-Tag: emacs-24.2~80 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=9e29ca4f4841910da08f73064532c891290cb252;p=emacs.git Add some f90 preprocessor font-lock (bug#10499) * lisp/progmodes/f90.el (f90-font-lock-keywords-2): Add some preprocessor elements. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index c26a196ebe7..a9fb4963233 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2012-06-21 Glenn Morris + + * progmodes/f90.el (f90-font-lock-keywords-2): + Add some preprocessor elements. (Bug#10499) + 2012-06-21 Stefan Monnier * progmodes/cperl-mode.el (cperl-update-syntaxification): diff --git a/lisp/progmodes/f90.el b/lisp/progmodes/f90.el index df6fdfd7cd9..0c8071cdc4d 100644 --- a/lisp/progmodes/f90.el +++ b/lisp/progmodes/f90.el @@ -233,6 +233,7 @@ :safe 'stringp :group 'f90-indent) +;; Should we add ^# to this? That's not really a comment. (defcustom f90-directive-comment-re "!hpf\\$" "Regexp of comment-like directive like \"!HPF\\\\$\", not to be indented." :type 'regexp @@ -627,7 +628,14 @@ logical\\|double[ \t]*precision\\|type[ \t]*(\\sw+)\\|none\\)[ \t]*" '("\\<\\(do\\|go[ \t]*to\\)\\>[ \t]*\\([0-9]+\\)" (1 font-lock-keyword-face) (2 font-lock-constant-face)) ;; Line numbers (lines whose first character after number is letter). - '("^[ \t]*\\([0-9]+\\)[ \t]*[a-z]+" (1 font-lock-constant-face t)))) + '("^[ \t]*\\([0-9]+\\)[ \t]*[a-z]+" (1 font-lock-constant-face t)) + ;; Override eg for "#include". + '("^#[ \t]*\\w+" (0 font-lock-preprocessor-face t) + ("\\" nil nil (0 font-lock-preprocessor-face))) + '("^#" ("\\(&&\\|||\\)" nil nil (0 font-lock-constant-face t))) + '("^#[ \t]*define[ \t]+\\(\\w+\\)(" (1 font-lock-function-name-face)) + '("^#[ \t]*define[ \t]+\\(\\w+\\)" (1 font-lock-variable-name-face)) + '("^#[ \t]*include[ \t]+\\(<.+>\\)" (1 font-lock-string-face)))) "Highlights declarations, do-loops and other constructs.") (defvar f90-font-lock-keywords-3