X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/d02fe47dd3be7310d1bfd6e802d1fac2ea5f5e9d..cb83c00bd13b63c0d0752698e4ad441968bc04ac:/lisp/font-lock.el diff --git a/lisp/font-lock.el b/lisp/font-lock.el index 749f137f56..dc1af6c61d 100644 --- a/lisp/font-lock.el +++ b/lisp/font-lock.el @@ -10,10 +10,10 @@ ;; This file is part of GNU Emacs. -;; GNU Emacs is free software; you can redistribute it and/or modify +;; GNU Emacs is free software: you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation; either version 3, or (at your option) -;; any later version. +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. ;; GNU Emacs is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -21,9 +21,7 @@ ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs; see the file COPYING. If not, write to the -;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GNU Emacs. If not, see . ;;; Commentary: @@ -111,7 +109,7 @@ ;; the pattern definitions.) Font Lock mode chooses which variable to use for ;; fontification based on `font-lock-maximum-decoration'. ;; -;; Font Lock mode fontification behaviour can be modified in a number of ways. +;; Font Lock mode fontification behavior can be modified in a number of ways. ;; See the below comments and the comments distributed throughout this file. ;;; Constructing patterns: @@ -197,8 +195,8 @@ ;; i.e., (b) above, all modes that have items that can be thought of as, say, ;; keywords, should be highlighted with the same face, etc. ;; - Make the face attributes fit the concept as far as possible. -;; i.e., function names might be a bold colour such as blue, comments might -;; be a bright colour such as red, character strings might be brown, because, +;; i.e., function names might be a bold color such as blue, comments might +;; be a bright color such as red, character strings might be brown, because, ;; err, strings are brown (that was not the reason, please believe me). ;; - Don't use a non-nil OVERRIDE unless you have a good reason. ;; Only use OVERRIDE for special things that are easy to define, such as the @@ -290,6 +288,11 @@ If a number, only buffers greater than this size have fontification messages." ;; We now allow a FACENAME in `font-lock-keywords' to be any expression that ;; returns a face. So the easiest thing is to continue using these variables, ;; rather than sometimes evaling FACENAME and sometimes not. sm. + +;; Note that in new code, in the vast majority of cases there is no +;; need to create variables that specify face names. Simply using +;; faces directly is enough. Font-lock is not a template to be +;; followed in this area. (defvar font-lock-comment-face 'font-lock-comment-face "Face name to use for comments.") @@ -331,7 +334,7 @@ This can be an \"!\" or the \"n\" in \"ifndef\".") "Face name to use for preprocessor directives.") (defvar font-lock-reference-face 'font-lock-constant-face) -(make-obsolete-variable 'font-lock-reference-face 'font-lock-constant-face) +(make-obsolete-variable 'font-lock-reference-face 'font-lock-constant-face "20.3") ;; Fontification variables: @@ -918,26 +921,26 @@ The value of this variable is used when Font Lock mode is turned on." nil t))))) (defun font-lock-turn-off-thing-lock () - (cond ((and (boundp 'fast-lock-mode) fast-lock-mode) + (cond ((bound-and-true-p fast-lock-mode) (fast-lock-mode -1)) - ((and (boundp 'jit-lock-mode) jit-lock-mode) + ((bound-and-true-p jit-lock-mode) (jit-lock-unregister 'font-lock-fontify-region) ;; Reset local vars to the non-jit-lock case. (kill-local-variable 'font-lock-fontify-buffer-function)) - ((and (boundp 'lazy-lock-mode) lazy-lock-mode) + ((bound-and-true-p lazy-lock-mode) (lazy-lock-mode -1)))) (defun font-lock-after-fontify-buffer () - (cond ((and (boundp 'fast-lock-mode) fast-lock-mode) + (cond ((bound-and-true-p fast-lock-mode) (fast-lock-after-fontify-buffer)) ;; Useless now that jit-lock intercepts font-lock-fontify-buffer. -sm ;; (jit-lock-mode ;; (jit-lock-after-fontify-buffer)) - ((and (boundp 'lazy-lock-mode) lazy-lock-mode) + ((bound-and-true-p lazy-lock-mode) (lazy-lock-after-fontify-buffer)))) (defun font-lock-after-unfontify-buffer () - (cond ((and (boundp 'fast-lock-mode) fast-lock-mode) + (cond ((bound-and-true-p fast-lock-mode) (fast-lock-after-unfontify-buffer)) ;; Useless as well. It's only called when: ;; - turning off font-lock: it does not matter if we leave spurious @@ -947,7 +950,7 @@ The value of this variable is used when Font Lock mode is turned on." ;; ;; (jit-lock-mode ;; (jit-lock-after-unfontify-buffer)) - ((and (boundp 'lazy-lock-mode) lazy-lock-mode) + ((bound-and-true-p lazy-lock-mode) (lazy-lock-after-unfontify-buffer)))) ;;; End of Font Lock Support mode. @@ -1826,7 +1829,7 @@ Sets various variables using `font-lock-defaults' (or, if nil, using (setq font-lock-keywords (font-lock-compile-keywords font-lock-keywords)))))) -;;; Colour etc. support. +;;; Color etc. support. ;; Note that `defface' will not overwrite any faces declared above via ;; `custom-declare-face'. @@ -1983,7 +1986,7 @@ Sets various variables using `font-lock-defaults' (or, if nil, using "Font Lock mode face used to highlight grouping constructs in Lisp regexps." :group 'font-lock-faces) -;;; End of Colour etc. support. +;;; End of Color etc. support. ;;; Menu support. @@ -2156,7 +2159,7 @@ This function could be MATCHER in a MATCH-ANCHORED `font-lock-keywords' item." ;; (defconst cpp-font-lock-keywords-source-directives "define\\|e\\(?:l\\(?:if\\|se\\)\\|ndif\\|rror\\)\\|file\\|i\\(?:f\\(?:n?def\\)?\\|mport\\|nclude\\)\\|line\\|pragma\\|undef\\|warning" - "Regular expressoin used in `cpp-font-lock-keywords'.") + "Regular expression used in `cpp-font-lock-keywords'.") ;; `cpp-font-lock-keywords-source-depth' is calculated from: ;; @@ -2205,10 +2208,10 @@ Used in `cpp-font-lock-keywords'.") '(1 font-lock-preprocessor-face prepend) (list (+ 2 directives-depth) 'font-lock-variable-name-face nil t)))) - "Font lock keyords for C preprocessor directives. -`c-mode', `c++-mode' and `objc-mode' have their own -font lock keyords for C preprocessor directives. This definition is for the -other modes in which C preprocessor directives are used. e.g. `asm-mode' and + "Font lock keywords for C preprocessor directives. +`c-mode', `c++-mode' and `objc-mode' have their own font lock keywords +for C preprocessor directives. This definition is for the other modes +in which C preprocessor directives are used. e.g. `asm-mode' and `ld-script-mode'.")