values of background color.
(font-lock-make-faces-done): New variable.
(font-lock-make-faces): Set font-lock-make-faces-done to t.
Don't call it when loading the file.
(font-lock-mode): Call font-lock-make-faces if not yet done.
C and C++ ones.
Added font-lock-after-fontify-buffer-hook; font-lock-fontify-buffer runs it.
Added font-lock-thing-lock-cleanup; font-lock-mode runs it when turning off.
Fixed font-lock-fontify-region so it uses forward-comment from comment-start,
rather than searching for comment-end.
Mods to lisp-font-lock-keywords-1 and 2.
font-lock-background-mode, font-lock-face-attributes): Default to nil.
(font-lock-make-faces): New function. Set them.
(font-lock.el): Add to after-init-hook if noninteractive or use it.
(font-lock-maximum-size): New variable.
(font-lock-mode): Use it to fontify only if buffer is within it.
(font-lock-defaults, font-lock-defaults-alist): Item for syntax table.
(font-lock-set-defaults): Set font-lock-syntax-table too.
(lisp-font-lock-keywords-2): Fix CLisp end-of-keyword in regexp.
(c-font-lock-keywords-*): Specific to ANSI C.
(c++-font-lock-keywords-*): Specific to ANSI C++.
rmail-summary-font-lock-keywords, dired-font-lock-keywords,
shell-font-lock-keywords, texi-font-lock-keywords,
perl-font-lock-keywords): Deleted.
(font-lock-mode): Doc fix; use add/remove-hook, not
setq; removed make-local-variable of font-lock-no-comments.
(font-lock-set-defaults): Do it there, and use:
(font-lock-defaults-alist): Use it to set font-lock-keywords,
font-lock-keywords-case-fold-search and font-lock-no-comments.
(turn-on-font-lock): New function.
(font-lock-fontify-buffer): Made interruptible; deleted messages.
(font-lock-fontify-region): Made syntax state reliable
by widening within new restriction; let cstart and cend for speed;
outputs message.
(font-lock-after-change-function): Remove spurious goto-char and use
forward-line, not 1+ end-of-line, for end of fontification region.
(font-lock-any-properties-p): Removed, use text-property-not-all.
(font-lock-*-face): facename values are themselves.
(font-lock-variable-name-face, font-lock-reference-face): New vars.
(font-lock-doc-string-face): Removed.
(font-lock-keywords): Extended value syntax.
(font-lock-hack-keywords): Cope with it; outputs initial message.
Merged in face-lock.el:
(font-lock-display-type, font-lock-background-mode)
(font-lock-face-attributes): New variables, use it.
(font-lock-make-face): New function, use them.
(font-lock-hack-keywords, font-lock-fontify-region):
Don't call set-buffer-modified-p if no change in its value.
(font-lock-hack-keywords): Avoid changing the narrowing.
(c-font-lock-keywords-2): Insist on whitespace before a label.
macros respect TeX's idea of identifiers.
(font-lock-set-defaults): Don't check for 'tex-mode, but instead
for 'plain-tex-mode, 'latex-mode, and 'slitex-mode which is what
tex-mode.el uses.
(font-lock-after-change-function): Test it.
(font-lock-fontify-buffer): Test it.
(font-lock-set-defaults): Set it.
(font-lock-mode): Make font-lock-no-comments local.
(font-lock-after-change-function): If we don't call
font-lock-fontify-region, clear out face props instead.
(font-lock-fontify-buffer): Don't give "syntactically"
message if we aren't doing that part.
(font-lock-unfontify-region): Don't remove `font-lock' props.
(font-lock-hack-keywords): Don't add `font-lock' props.
Handle values other than t and nil for allow-overlap-p specially.
(c-font-lock-keywords-1): Don't override how comments in #if... appear.
Highlight text after #else or #endif.
Scan for comments and strings from beg of line.
(c-font-lock-keywords-1): Recognize &, like *, before fn name.
(perl-font-lock-keywords): Put digit 1 into function-name-face items.
Allow whitespace before the open-brace.