1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-28 16:21:07 -08:00
emacs/test/lisp/progmodes
Stefan Kangas 3d3c109460 Make font-lock face variables obsolete
Using these variables as "another mechanism for changing face
appearance" never really worked, since mode authors were free to use the
face instead of the variable (i.e. quoting the symbol).  This means that
when users customized the variables, it would change its appearance only
in some cases, which is a rather surprising interface.

Indeed, it turns out that some modes have not always been consistent,
and mixed using the variable and the face, increasing the confusion even
further.  Thus, the only thing users could rely on to always work was to
leave the variables at their default value, and to customize the face.

We now recommend customizing the face, and are obsoleting these
variables.  This will lead to some minor code-churn, but it is believed
that it will be ultimately worth it.  To fix existing Lisp code, you
should typically only need to quote the symbol, as this commit shows.

It might be the case that we will have to keep the obsolete variables,
that have been with us since Emacs 19, around for a longer time-period
than normal, to allow package authors to adapt.

* lisp/font-lock.el (font-lock-comment-face)
(font-lock-comment-delimiter-face, font-lock-string-face)
(font-lock-doc-face, font-lock-doc-markup-face, font-lock-keyword-face)
(font-lock-builtin-face, font-lock-function-name-face)
(font-lock-variable-name-face, font-lock-type-face)
(font-lock-constant-face, font-lock-warning-face)
(font-lock-negation-char-face, font-lock-preprocessor-face): Make face
variables obsolete in favor of customizing the faces directly
instead.  (Bug#71469)

* doc/lispref/modes.texi (Faces for Font Lock): Don't document above
obsolete variables.

* lisp/cedet/data-debug.el (data-debug-insert-hash-table)
(data-debug-insert-widget-properties, data-debug-insert-string)
(data-debug-insert-number):
* lisp/emacs-lisp/lisp-mode.el (elisp--font-lock-backslash)
(lisp-font-lock-syntactic-face-function):
* lisp/emacs-lisp/package.el (describe-package-1):
* lisp/generic-x.el (rc-generic-mode, rul-generic-mode):
* lisp/org/org-table.el (org-table-edit-formulas):
* lisp/progmodes/cc-fonts.el (c-font-lock-invalid-single-quotes)
(c-maybe-font-lock-wrong-style-comments, c-font-lock-declarators)
(c-font-lock-c++-lambda-captures, c-font-lock-c++-modules):
* lisp/progmodes/cperl-mode.el (cperl-find-sub-attrs)
(cperl-look-at-leading-count, cperl-process-here-doc)
(cperl-find-pods-heres):
* lisp/progmodes/gdb-mi.el (gdb-init-1, gdb-update, gdb-running)
(gdb-starting, gdb-stopped, gdb-internals)
(gdb-breakpoints--add-breakpoint-row, gdb-locals-handler-custom)
(gdb-registers-handler-custom, gdb-get-source-file):
* lisp/progmodes/js.el (js--font-lock-keywords-1)
(js--font-lock-keywords-2, js-font-lock-syntactic-face-function):
* lisp/progmodes/lua-ts-mode.el (lua-ts--comment-font-lock):
* lisp/progmodes/meta-mode.el (meta-indent-in-string-p):
* lisp/progmodes/prolog.el (prolog-font-lock-keywords):
* lisp/progmodes/python.el (python-font-lock-syntactic-face-function):
* lisp/progmodes/ruby-ts-mode.el (ruby-ts--comment-font-lock):
* lisp/progmodes/sh-script.el (sh-font-lock-syntactic-face-function):
* lisp/textmodes/tex-mode.el (doctex-font-lock-syntactic-face-function):
* test/lisp/faces-tests.el (faces--test-color-at-point):
* test/lisp/progmodes/cperl-mode-tests.el (cperl-test-extra-delimiters)
(cperl-test-bug-47112, cperl-test-bug-65834, cperl-test-bug-66145)
(cperl-test-bug-66161, cperl-test-bug-69604):
* test/lisp/progmodes/python-tests.el
(python-ts-mode-compound-keywords-face)
(python-ts-mode-named-assignment-face-1)
(python-ts-mode-assignment-face-2, python-ts-mode-nested-types-face-1)
(python-ts-mode-union-types-face-1, python-ts-mode-union-types-face-2)
(python-ts-mode-types-face-1, python-ts-mode-types-face-2)
(python-ts-mode-types-face-3, python-ts-mode-isinstance-type-face-1)
(python-ts-mode-isinstance-type-face-2)
(python-ts-mode-isinstance-type-face-3)
(python-ts-mode-superclass-type-face, python-ts-mode-class-patterns-face)
(python-ts-mode-dotted-decorator-face-1)
(python-ts-mode-dotted-decorator-face-2)
(python-ts-mode-builtin-call-face)
(python-ts-mode-interpolation-nested-string)
(python-ts-mode-level-fontification-wo-interpolation)
(python-ts-mode-disabled-string-interpolation)
(python-ts-mode-interpolation-doc-string):
* test/lisp/progmodes/ruby-mode-tests.el
(ruby-heredoc-font-lock, ruby-heredoc-highlights-interpolations)
(ruby-exit!-font-lock, ruby-regexp-interpolation-is-highlighted)
(ruby-recognize-symbols-starting-with-at-character)
(ruby-hash-character-not-interpolation)
(ruby-interpolation-suppresses-quotes-inside)
(ruby-interpolation-suppresses-one-double-quote)
(ruby-interpolation-inside-percent-literal)
(ruby-interpolation-inside-percent-literal-with-paren)
(ruby-interpolation-inside-another-interpolation)
(ruby-interpolation-inside-double-quoted-percent-literals)
(ruby-no-interpolation-in-single-quoted-literals):
Don't use above obsolete variables.
* lisp/progmodes/cc-fonts.el (font-lock-constant-face): Don't
declare now-unused variable.
2024-12-18 03:48:35 +01:00
..
c-ts-mode-resources ; Indent by 8 in BSD indent tests for c-ts-mode 2024-12-01 17:53:23 -08:00
cperl-mode-resources ; Fix typos 2024-06-23 16:40:06 +02:00
csharp-mode-resources Fix last change 2024-04-25 18:59:25 +03:00
elisp-mode-resources
elixir-ts-mode-resources ; Fix typos 2024-01-28 17:11:51 +01:00
flymake-resources Send useless output in flymake-tests to /dev/null (bug#70716) 2024-08-28 19:47:40 +02:00
go-ts-mode-resources Add font-locking for variables in go-ts-mode range clauses (bug#71209) 2024-06-01 17:47:57 +03:00
heex-ts-mode-resources
java-ts-mode-resources java-ts-mode: Indentation for opening brace on a separate line 2024-02-17 22:35:16 +02:00
js-resources
lua-ts-mode-resources Improve comment indenting in 'lua-ts-mode' 2024-11-14 10:14:46 +02:00
project-resources
ruby-mode-resources Support the new option in ruby-ts-mode too 2024-09-02 21:57:35 +03:00
rust-ts-mode-resources Rust ts: fontify as type the possible suffix of number literals 2024-11-23 14:56:38 +02:00
sh-script-resources Make sh-script-tests.el more robust 2024-04-05 19:43:56 +02:00
typescript-ts-mode-resources Improve one test (bug#71998) 2024-07-21 14:55:06 +02:00
xref-resources
asm-mode-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
autoconf-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
bat-mode-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
bug-reference-tests.el Support text overlays for thingatpt provider helpers 2024-05-20 13:24:11 -07:00
c-ts-mode-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
cc-mode-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
compile-tests.el Make Compilation mode recognize non-legacy Kotlin/Gradle errors 2024-06-22 11:30:51 +03:00
cperl-mode-tests.el Make font-lock face variables obsolete 2024-12-18 03:48:35 +01:00
csharp-mode-tests.el Fix last change 2024-04-27 22:12:14 +03:00
eglot-tests.el Merge from savannah/emacs-30 2024-09-11 13:21:58 +08:00
elisp-mode-tests.el unintern: Drop support for obsolete calling convention 2024-12-17 00:59:51 +01:00
elixir-ts-mode-tests.el ; Add 2024 to copyright years 2024-01-02 10:30:05 +08:00
etags-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
executable-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
f90-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
flymake-tests.el ; Fix flymake tests with GCC 14. 2024-06-24 15:45:42 +02:00
gdb-mi-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
glasses-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
go-ts-mode-tests.el Add font-locking for variables in go-ts-mode range clauses (bug#71209) 2024-06-01 17:47:57 +03:00
grep-tests.el Merge from savannah/emacs-29 2024-01-02 10:28:14 +08:00
heex-ts-mode-tests.el ; Add 2024 to copyright years 2024-01-02 10:30:05 +08:00
hideshow-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
java-ts-mode-tests.el Merge from savannah/emacs-29 2024-01-02 10:28:14 +08:00
js-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
lua-ts-mode-tests.el ; Quietly skip 'lua-ts-mode' tests (bug#70786) 2024-05-08 20:36:37 -07:00
octave-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
opascal-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
pascal-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
peg-tests.el (with-peg-rules): Fix references to rulesets (bug#74018) 2024-10-28 22:14:10 -04:00
perl-mode-tests.el Merge from savannah/emacs-29 2024-01-02 10:28:14 +08:00
project-tests.el project-tests: Add test assertion for bug#73801 2024-11-01 02:35:08 +02:00
ps-mode-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
python-tests.el Make font-lock face variables obsolete 2024-12-18 03:48:35 +01:00
ruby-mode-tests.el Make font-lock face variables obsolete 2024-12-18 03:48:35 +01:00
ruby-ts-mode-tests.el Mark if-let and when-let obsolete 2024-10-24 16:50:07 +08:00
rust-ts-mode-tests.el Rust ts: fontify as type the possible suffix of number literals 2024-11-23 14:56:38 +02:00
scheme-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
sh-script-tests.el Make sh-script-tests.el more robust 2024-04-05 19:43:56 +02:00
sql-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
subword-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
tcl-tests.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
typescript-ts-mode-tests.el Tag test in typescript-ts-mode-tests.el as unstable 2024-08-13 09:19:00 +02:00
which-func-tests.el ; Add 2024 to copyright years 2024-01-02 10:30:05 +08:00
xref-tests.el xref--group-name-for-display: Undo most of the latest change 2024-05-18 03:32:48 +03:00