From 9445f99bd69192de4a1d0f86f33410f4f7d64c4c Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Tue, 18 Jun 2013 00:43:46 -0700 Subject: [PATCH] Replace obsolete generic-make-keywords calls * lisp/generic-x.el (bat-generic-mode, rc-generic-mode, rul-generic-mode): Replace obsolete function generic-make-keywords with its expansion. * lisp/emacs-lisp/generic.el: Update commentary. --- lisp/ChangeLog | 3 ++ lisp/emacs-lisp/generic.el | 7 +-- lisp/generic-x.el | 101 +++++++++++++++++-------------------- 3 files changed, 51 insertions(+), 60 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 793f470493c..ab8868d600c 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,8 @@ 2013-06-18 Glenn Morris + * generic-x.el (bat-generic-mode, rc-generic-mode, rul-generic-mode): + Replace obsolete function generic-make-keywords with its expansion. + * progmodes/python.el (ffap-alist): Declare. * textmodes/reftex.el (bibtex-mode-map): Declare. diff --git a/lisp/emacs-lisp/generic.el b/lisp/emacs-lisp/generic.el index cb86a554335..3eb64f9f7f0 100644 --- a/lisp/emacs-lisp/generic.el +++ b/lisp/emacs-lisp/generic.el @@ -44,11 +44,8 @@ ;; end at the end of the line.) Emacs does not support comment ;; strings of more than two characters in length. ;; -;; * List of keywords to font-lock. Each keyword should be a string. -;; If you have additional keywords which should be highlighted in a -;; face different from `font-lock-keyword-face', you can use the -;; convenience function `generic-make-keywords-list' (which see), -;; and add the result to the following list: +;; * List of keywords to font-lock in `font-lock-keyword-face'. +;; Each keyword should be a string. ;; ;; * Additional expressions to font-lock. This should be a list of ;; expressions, each of which should be of the same form as those in diff --git a/lisp/generic-x.el b/lisp/generic-x.el index 946b81992f8..1867759b549 100644 --- a/lisp/generic-x.el +++ b/lisp/generic-x.el @@ -483,38 +483,30 @@ like an INI file. You can add this hook to `find-file-hook'." ;; are frequently used in simple text, we punt.) ;; In `generic-bat-mode-setup-function' we make the keywords ;; case-insensitive - (generic-make-keywords-list - '("for" - "if") - font-lock-keyword-face "^[@ \t]*") + '("^[@ \t]*\\_<\\(for\\|if\\)\\_>" 1 font-lock-keyword-face) ;; These keywords can be anywhere on a line ;; In `generic-bat-mode-setup-function' we make the keywords ;; case-insensitive - (generic-make-keywords-list - '("do" - "exist" - "errorlevel" - "goto" - "not") - font-lock-keyword-face) + (list (regexp-opt '("do" "exist" "errorlevel" "goto" "not") 'symbols) + 1 font-lock-keyword-face) ;; These are built-in commands. Only frequently-used ones are listed. - (generic-make-keywords-list - '("CALL" "call" "Call" - "CD" "cd" "Cd" - "CLS" "cls" "Cls" - "COPY" "copy" "Copy" - "DEL" "del" "Del" - "ECHO" "echo" "Echo" - "MD" "md" "Md" - "PATH" "path" "Path" - "PAUSE" "pause" "Pause" - "PROMPT" "prompt" "Prompt" - "RD" "rd" "Rd" - "REN" "ren" "Ren" - "SET" "set" "Set" - "START" "start" "Start" - "SHIFT" "shift" "Shift") - font-lock-builtin-face "[ \t|\n]") + (list (concat "[ \t|\n]" + (regexp-opt '("CALL" "call" "Call" + "CD" "cd" "Cd" + "CLS" "cls" "Cls" + "COPY" "copy" "Copy" + "DEL" "del" "Del" + "ECHO" "echo" "Echo" + "MD" "md" "Md" + "PATH" "path" "Path" + "PAUSE" "pause" "Pause" + "PROMPT" "prompt" "Prompt" + "RD" "rd" "Rd" + "REN" "ren" "Ren" + "SET" "set" "Set" + "START" "start" "Start" + "SHIFT" "shift" "Shift") 'symbols)) + 1 font-lock-builtin-face) '("^[ \t]*\\(:\\sw+\\)" 1 font-lock-function-name-face t) '("\\(%\\sw+%\\)" 1 font-lock-variable-name-face t) '("\\(%[0-9]\\)" 1 font-lock-variable-name-face t) @@ -841,21 +833,16 @@ like an INI file. You can add this hook to `find-file-hook'." ;; the choice of face for each token group (eval-when-compile (list - (generic-make-keywords-list - '("FILEFLAGSMASK" - "FILEFLAGS" - "FILEOS" - "FILESUBTYPE" - "FILETYPE" - "FILEVERSION" - "PRODUCTVERSION") - font-lock-type-face) - (generic-make-keywords-list - '("BEGIN" - "BLOCK" - "END" - "VALUE") - font-lock-function-name-face) + (list (regexp-opt '("FILEFLAGSMASK" + "FILEFLAGS" + "FILEOS" + "FILESUBTYPE" + "FILETYPE" + "FILEVERSION" + "PRODUCTVERSION") 'symbols) + 1 font-lock-type-face) + (list (regexp-opt '("BEGIN" "BLOCK" "END" "VALUE") 'symbols) + 1 font-lock-function-name-face) '("^#[ \t]*include[ \t]+\\(<[^>\"\n]+>\\)" 1 font-lock-string-face) '("^#[ \t]*define[ \t]+\\(\\sw+\\)(" 1 font-lock-function-name-face) '("^#[ \t]*\\(elif\\|if\\)\\>" @@ -1470,21 +1457,25 @@ like an INI file. You can add this hook to `find-file-hook'." (1 font-lock-keyword-face) (2 font-lock-constant-face nil t)) ;; system variables - (generic-make-keywords-list - installshield-system-variables-list - font-lock-variable-name-face "[^_]" "[^_]") + (list (concat "[^_]" + (regexp-opt installshield-system-variables-list 'symbols) + "[^_]") + 1 font-lock-variable-name-face) ;; system functions - (generic-make-keywords-list - installshield-system-functions-list - font-lock-function-name-face "[^_]" "[^_]") + (list (concat "[^_]" + (regexp-opt installshield-system-functions-list 'symbols) + "[^_]") + 1 font-lock-function-name-face) ;; type keywords - (generic-make-keywords-list - installshield-types-list - font-lock-type-face "[^_]" "[^_]") + (list (concat "[^_]" + (regexp-opt installshield-types-list 'symbols) + "[^_]") + 1 font-lock-type-face) ;; function argument constants - (generic-make-keywords-list - installshield-funarg-constants-list - font-lock-variable-name-face "[^_]" "[^_]"))) ; is this face the best choice? + (list (concat "[^_]" + (regexp-opt installshield-funarg-constants-list 'symbols) + "[^_]") + 1 font-lock-variable-name-face))) ; is this face the best choice? '("\\.[rR][uU][lL]\\'") '(generic-rul-mode-setup-function) "Generic mode for InstallShield RUL files.") -- 2.39.2