aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog4
-rw-r--r--lisp/progmodes/make-mode.el21
2 files changed, 10 insertions, 15 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index f22a1d6e59..8731007e99 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,5 +1,9 @@
2001-04-25 Stefan Monnier <[email protected]>
+ * progmodes/make-mode.el (makefile-font-lock-keywords):
+ Rationalize the rules for includes and conditionals and use the
+ keyword face for them.
+
* faces.el (modify-face): Add compatibility for non-interactive use.
2001-04-24 John Wiegley <[email protected]>
diff --git a/lisp/progmodes/make-mode.el b/lisp/progmodes/make-mode.el
index 72e2e863a7..8e5948661c 100644
--- a/lisp/progmodes/make-mode.el
+++ b/lisp/progmodes/make-mode.el
@@ -278,21 +278,12 @@ not be enclosed in { } or ( )."
;; Fontify conditionals and includes.
;; Note that plain `if' is an automake conditional, and not a bug.
- '("^[ \t]*\\(-?include\\|if\\(n?eq\\|n?def\\)?\\)[ \t]+\\([^: \t\n#]+\\)"
- (1 font-lock-warning-face) (3 font-lock-variable-name-face))
-
- ;; Fontify endif and else.
- '("^[ \t]*\\(else\\|endif\\)[ \t]*\\(#.*$\\)?"
- (1 font-lock-warning-face))
-
- ;; Fontify conditionals and includes.
- ;; Note that plain `if' is an automake conditional, and not a bug.
- '("^[ \t]*\\(-?include\\|if\\(n?eq\\|n?def\\)?\\)[ \t]+\\([^: \t\n#]+\\)"
- (1 font-lock-reference-face) (3 font-lock-variable-name-face))
-
- ;; Fontify endif and else.
- '("^[ \t]*\\(else\\|endif\\)[ \t]*\\(#.*$\\)?"
- (1 font-lock-reference-face))
+ (list
+ (concat "^\\(?: [ \t]*\\)?"
+ (regexp-opt '("-include" "-sinclude" "include" "sinclude" "ifeq"
+ "if" "ifneq" "ifdef" "ifndef" "endif" "else") t)
+ "\\>[ \t]*\\([^: \t\n#]*\\)")
+ '(1 font-lock-keyword-face) '(2 font-lock-variable-name-face))
;; Highlight lines that contain just whitespace.
;; They can cause trouble, especially if they start with a tab.