emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

emacs-29 2ea6ee5cbf: (font-lock-regexp-face): New face


From: Dmitry Gutov
Subject: emacs-29 2ea6ee5cbf: (font-lock-regexp-face): New face
Date: Fri, 6 Jan 2023 12:56:59 -0500 (EST)

branch: emacs-29
commit 2ea6ee5cbfac5c5e9a1e27ddda2d88cdedc6a6eb
Author: Dmitry Gutov <dgutov@yandex.ru>
Commit: Dmitry Gutov <dgutov@yandex.ru>

    (font-lock-regexp-face): New face
    
    * lisp/font-lock.el (font-lock-regexp-face): New face.
    
    * lisp/progmodes/typescript-ts-mode.el
    (typescript-ts-mode--font-lock-settings):
    * lisp/progmodes/ruby-ts-mode.el (ruby-ts--font-lock-settings):
    * lisp/progmodes/js.el (js--treesit-font-lock-settings):
    Use it for regexps.
    
    * etc/NEWS: Mention the addition.
---
 etc/NEWS                             | 1 +
 lisp/font-lock.el                    | 6 ++++++
 lisp/progmodes/js.el                 | 2 +-
 lisp/progmodes/ruby-ts-mode.el       | 6 ++----
 lisp/progmodes/typescript-ts-mode.el | 2 +-
 5 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/etc/NEWS b/etc/NEWS
index 059278b08a..5901b2718e 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -798,6 +798,7 @@ filter/sentinel error has been handled.
 These faces are primarily meant for use with tree-sitter.  They are:
 'font-lock-bracket-face', 'font-lock-delimiter-face',
 'font-lock-escape-face', 'font-lock-number-face',
+'font-lock-regexp-face',
 'font-lock-misc-punctuation-face', 'font-lock-operator-face',
 'font-lock-property-face', and 'font-lock-punctuation-face'.
 
diff --git a/lisp/font-lock.el b/lisp/font-lock.el
index 74881a14cc..99df8fb9e0 100644
--- a/lisp/font-lock.el
+++ b/lisp/font-lock.el
@@ -2073,6 +2073,12 @@ as the constructs of Haddock, Javadoc and similar 
systems."
   "Font Lock mode face used to highlight preprocessor directives."
   :group 'font-lock-faces)
 
+(defface font-lock-regexp-face
+  '((t :inherit font-lock-string-face))
+  "Font Lock mode face used to highlight regexp literals."
+  :group 'font-lock-faces
+  :version "29.1")
+
 (defface font-lock-regexp-grouping-backslash
   '((t :inherit bold))
   "Font Lock mode face for backslashes in Lisp regexp grouping constructs."
diff --git a/lisp/progmodes/js.el b/lisp/progmodes/js.el
index 90b9068fd5..fe483f220d 100644
--- a/lisp/progmodes/js.el
+++ b/lisp/progmodes/js.el
@@ -3498,7 +3498,7 @@ This function is intended for use in 
`after-change-functions'."
 
    :language 'javascript
    :feature 'string
-   '((regex pattern: (regex_pattern)) @font-lock-string-face
+   '((regex pattern: (regex_pattern)) @font-lock-regexp-face
      (string) @font-lock-string-face)
 
    :language 'javascript
diff --git a/lisp/progmodes/ruby-ts-mode.el b/lisp/progmodes/ruby-ts-mode.el
index bf09726b34..5f5de50043 100644
--- a/lisp/progmodes/ruby-ts-mode.el
+++ b/lisp/progmodes/ruby-ts-mode.el
@@ -227,10 +227,8 @@ values of OVERRIDE"
    ;; Also before 'operator because % and / are operators
    :language language
    :feature 'regexp
-   ;; TODO: We probably need a separate face for regexps everywhere.
-   ;; Maybe another one for regexp delimiters as well.
-   '((regex "/" @font-lock-string-face)
-     (regex _ (string_content) @font-lock-string-face))
+   '((regex "/" @font-lock-regexp-face)
+     (regex _ (string_content) @font-lock-regexp-face))
 
    :language language
    :feature 'operator
diff --git a/lisp/progmodes/typescript-ts-mode.el 
b/lisp/progmodes/typescript-ts-mode.el
index 4042e2b101..5a9a7eea95 100644
--- a/lisp/progmodes/typescript-ts-mode.el
+++ b/lisp/progmodes/typescript-ts-mode.el
@@ -151,7 +151,7 @@ Argument LANGUAGE is either `typescript' or `tsx'."
    :language language
    :override t
    :feature 'string
-   `((regex pattern: (regex_pattern)) @font-lock-string-face
+   `((regex pattern: (regex_pattern)) @font-lock-regexp-face
      (string) @font-lock-string-face
      (template_string) @js--fontify-template-string
      (template_substitution ["${" "}"] @font-lock-misc-punctuation-face))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]