mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-05 22:20:24 -08:00
Remove the cached values in tree-sitter modes (bug#79363)
The cached values are not needed anymore since Emacs now caches the compiled queries. * lisp/progmodes/cmake-ts-mode.el: (cmake-ts-mode--indent-rules-cached): Remove. (cmake-ts-mode--indent-rules): Return values directly. (cmake-ts-mode--font-lock-settings-cached): Remove. (cmake-ts-mode--font-lock-settings): Return values directly. * lisp/progmodes/php-ts-mode.el: (php-ts-mode--font-lock-settings-cached): Remove. (php-ts-mode--font-lock-settings): Return values directly. (php-ts-mode--custom-html-font-lock-settings-cached): Remove. (php-ts-mode--custom-html-font-lock-settings): Return values directly. * lisp/textmodes/mhtml-ts-mode.el: (mhtml-ts-mode--treesit-font-lock-settings-cached): Remove. (mhtml-ts-mode--treesit-font-lock-settings): Return values directly. (mhtml-ts-mode--treesit-indent-rules-cached): Remove. (mhtml-ts-mode--treesit-indent-rules): Return values directly. * lisp/progmodes/cmake-ts-mode.el: (cmake-ts-mode--indent-rules-cached): Remove (cmake-ts-mode--indent-rules): Return values directly. (cmake-ts-mode--font-lock-settings-cached): Remove. (cmake-ts-mode--font-lock-settings): Return values directly. * lisp/progmodes/csharp-mode.el: (csharp-ts-mode--font-lock-settings-cached): Remove. (csharp-ts-mode--font-lock-settings): Return values directly.
This commit is contained in:
parent
85f2bf2bc7
commit
2c19f6087e
5 changed files with 796 additions and 868 deletions
|
|
@ -61,16 +61,8 @@
|
|||
table)
|
||||
"Syntax table for `cmake-ts-mode'.")
|
||||
|
||||
(defvar cmake-ts-mode--indent-rules-cached nil
|
||||
"Cached tree-sitter indent rules for `cmake-ts-mode'.")
|
||||
|
||||
(defun cmake-ts-mode--indent-rules ()
|
||||
"Return tree-sitter indent rules for `cmake-ts-mode'.
|
||||
|
||||
Tree-sitter indent rules are evaluated the first time this function is
|
||||
called. Subsequent calls return the first evaluated value."
|
||||
(or cmake-ts-mode--indent-rules-cached
|
||||
(setq cmake-ts-mode--indent-rules-cached
|
||||
"Return tree-sitter indent rules for `cmake-ts-mode'."
|
||||
`((cmake
|
||||
((node-is ")") parent-bol 0)
|
||||
((node-is "else_command") parent-bol 0)
|
||||
|
|
@ -89,7 +81,7 @@ called. Subsequent calls return the first evaluated value."
|
|||
;; Release v0.3.0 wraps the body of commands into a body node.
|
||||
,@(ignore-errors
|
||||
(treesit-query-capture 'cmake '((body) @capture))
|
||||
`(((parent-is "body") grand-parent cmake-ts-mode-indent-offset))))))))
|
||||
`(((parent-is "body") grand-parent cmake-ts-mode-indent-offset))))))
|
||||
|
||||
(defvar cmake-ts-mode--constants
|
||||
'("ON" "TRUE" "YES" "Y" "OFF" "FALSE" "NO" "N" "IGNORE" "NOTFOUND")
|
||||
|
|
@ -148,16 +140,8 @@ Check if a node type is available, then return the right font lock rules."
|
|||
eol))
|
||||
@font-lock-constant-face))))))))
|
||||
|
||||
(defvar cmake-ts-mode--font-lock-settings-cached nil
|
||||
"Cached tree-sitter font-lock settings for `cmake-ts-mode'.")
|
||||
|
||||
(defun cmake-ts-mode--font-lock-settings ()
|
||||
"Return tree-sitter font-lock settings for `cmake-ts-mode'.
|
||||
|
||||
Tree-sitter font-lock settings are evaluated the first time this
|
||||
function is called. Subsequent calls return the first evaluated value."
|
||||
(or cmake-ts-mode--font-lock-settings-cached
|
||||
(setq cmake-ts-mode--font-lock-settings-cached
|
||||
"Return tree-sitter font-lock settings for `cmake-ts-mode'."
|
||||
(treesit-font-lock-rules
|
||||
:language 'cmake
|
||||
:feature 'bracket
|
||||
|
|
@ -217,7 +201,7 @@ function is called. Subsequent calls return the first evaluated value."
|
|||
:language 'cmake
|
||||
:feature 'error
|
||||
:override t
|
||||
'((ERROR) @font-lock-warning-face)))))
|
||||
'((ERROR) @font-lock-warning-face)))
|
||||
|
||||
(defun cmake-ts-mode--defun-name (node)
|
||||
"Return the defun name of NODE.
|
||||
|
|
|
|||
|
|
@ -779,16 +779,8 @@ compilation and evaluation time conflicts."
|
|||
(if (csharp-ts-mode--test-method-declaration-type-field)
|
||||
'type: 'returns:))
|
||||
|
||||
(defvar csharp-ts-mode--font-lock-settings-cached nil
|
||||
"Cached tree-sitter font-lock settings for `csharp-ts-mode'.")
|
||||
|
||||
(defun csharp-ts-mode--font-lock-settings ()
|
||||
"Return tree-sitter font-lock settings for `csharp-ts-mode'.
|
||||
|
||||
Tree-sitter font-lock settings are evaluated the first time this
|
||||
function is called. Subsequent calls return the first evaluated value."
|
||||
(or csharp-ts-mode--font-lock-settings-cached
|
||||
(setq csharp-ts-mode--font-lock-settings-cached
|
||||
"Return tree-sitter font-lock settings for `csharp-ts-mode'."
|
||||
(treesit-font-lock-rules
|
||||
:language 'c-sharp
|
||||
:feature 'expression
|
||||
|
|
@ -1117,7 +1109,7 @@ function is called. Subsequent calls return the first evaluated value."
|
|||
(preproc_region
|
||||
(preproc_arg) @font-lock-variable-use-face)
|
||||
(preproc_endregion
|
||||
(preproc_arg) @font-lock-variable-use-face)))))))
|
||||
(preproc_arg) @font-lock-variable-use-face)))))
|
||||
|
||||
;;;###autoload
|
||||
(add-to-list 'auto-mode-alist '("\\.cs\\'" . csharp-mode))
|
||||
|
|
|
|||
|
|
@ -3513,16 +3513,8 @@ characters of the current line."
|
|||
node parent bol args)
|
||||
js-indent-level)))
|
||||
|
||||
(defvar js--treesit-indent-rules-cached nil
|
||||
"Cached tree-sitter indent rules for `js-ts-mode'.")
|
||||
|
||||
(defun js--treesit-indent-rules ()
|
||||
"Return tree-sitter indent rules for `js-ts-mode'.
|
||||
|
||||
Tree-sitter indent rules are evaluated the first time this function is
|
||||
called. Subsequent calls return the first evaluated value."
|
||||
(or js--treesit-indent-rules-cached
|
||||
(setq js--treesit-indent-rules-cached
|
||||
"Return tree-sitter indent rules for `js-ts-mode'."
|
||||
`((javascript
|
||||
((parent-is "program") parent-bol 0)
|
||||
((node-is "}") standalone-parent 0)
|
||||
|
|
@ -3578,7 +3570,7 @@ called. Subsequent calls return the first evaluated value."
|
|||
(no-node parent-bol 0))
|
||||
(jsdoc
|
||||
((and (parent-is "document") c-ts-common-looking-at-star)
|
||||
c-ts-common-comment-start-after-first-star -1))))))
|
||||
c-ts-common-comment-start-after-first-star -1))))
|
||||
|
||||
(defvar js--treesit-keywords
|
||||
'("as" "async" "await" "break" "case" "catch" "class" "const" "continue"
|
||||
|
|
@ -3595,16 +3587,8 @@ called. Subsequent calls return the first evaluated value."
|
|||
"&&" "||" "!")
|
||||
"JavaScript operators for tree-sitter font-locking.")
|
||||
|
||||
(defvar js--treesit-font-lock-settings-cached nil
|
||||
"Cached tree-sitter font-lock settings for `js-ts-mode'.")
|
||||
|
||||
(defun js--treesit-font-lock-settings ()
|
||||
"Return tree-sitter font-lock settings for `js-ts-mode'.
|
||||
|
||||
Tree-sitter font-lock settings are evaluated the first time this
|
||||
function is called. Subsequent calls return the first evaluated value."
|
||||
(or js--treesit-font-lock-settings-cached
|
||||
(setq js--treesit-font-lock-settings-cached
|
||||
"Return tree-sitter font-lock settings for `js-ts-mode'."
|
||||
(treesit-font-lock-rules
|
||||
|
||||
:language 'javascript
|
||||
|
|
@ -3750,7 +3734,7 @@ function is called. Subsequent calls return the first evaluated value."
|
|||
:language 'jsdoc
|
||||
:override t
|
||||
:feature 'definition
|
||||
'((identifier) @font-lock-variable-name-face)))))
|
||||
'((identifier) @font-lock-variable-name-face)))
|
||||
|
||||
(defun js--fontify-template-string (node override start end &rest _)
|
||||
"Fontify template string but not substitution inside it.
|
||||
|
|
|
|||
|
|
@ -955,16 +955,8 @@ characters of the current line."
|
|||
("::" . ?∷))
|
||||
"Value for `prettify-symbols-alist' in `php-ts-mode'.")
|
||||
|
||||
(defvar php-ts-mode--font-lock-settings-cached nil
|
||||
"Cached tree-sitter font-lock settings for `php-ts-mode'.")
|
||||
|
||||
(defun php-ts-mode--font-lock-settings ()
|
||||
"Return tree-sitter font-lock settings for `php-ts-mode'.
|
||||
|
||||
Tree-sitter font-lock settings are evaluated the first time this
|
||||
function is called. Subsequent calls return the first evaluated value."
|
||||
(or php-ts-mode--font-lock-settings-cached
|
||||
(setq php-ts-mode--font-lock-settings-cached
|
||||
"Return tree-sitter font-lock settings for `php-ts-mode'."
|
||||
(treesit-font-lock-rules
|
||||
|
||||
:language 'php
|
||||
|
|
@ -1168,22 +1160,14 @@ function is called. Subsequent calls return the first evaluated value."
|
|||
:language 'php
|
||||
:feature 'error
|
||||
:override t
|
||||
'((ERROR) @php-ts-mode--fontify-error)))))
|
||||
'((ERROR) @php-ts-mode--fontify-error)))
|
||||
|
||||
|
||||
;;; Font-lock helpers
|
||||
|
||||
(defvar php-ts-mode--custom-html-font-lock-settings-cached nil
|
||||
"Cached tree-sitter font-lock settings for HTML when embedded in PHP.")
|
||||
|
||||
(defun php-ts-mode--custom-html-font-lock-settings ()
|
||||
"Tree-sitter Font-lock settings for HTML when embedded in PHP.
|
||||
Like `mhtml-ts-mode--font-lock-settings' but adapted for `php-ts-mode'.
|
||||
|
||||
Tree-sitter font-lock settings are evaluated the first time this
|
||||
function is called. Subsequent calls return the first evaluated value."
|
||||
(or php-ts-mode--custom-html-font-lock-settings-cached
|
||||
(setq php-ts-mode--custom-html-font-lock-settings-cached
|
||||
Like `mhtml-ts-mode--font-lock-settings' but adapted for `php-ts-mode'."
|
||||
(treesit-replace-font-lock-feature-settings
|
||||
(treesit-font-lock-rules
|
||||
:language 'html
|
||||
|
|
@ -1192,7 +1176,7 @@ function is called. Subsequent calls return the first evaluated value."
|
|||
'((comment) @font-lock-comment-face
|
||||
;; handle shebang path and others type of comment
|
||||
(document (text) @font-lock-comment-face)))
|
||||
(mhtml-ts-mode--treesit-font-lock-settings)))))
|
||||
(mhtml-ts-mode--treesit-font-lock-settings)))
|
||||
|
||||
(defvar php-ts-mode--phpdoc-font-lock-settings
|
||||
(treesit-font-lock-rules
|
||||
|
|
|
|||
|
|
@ -259,16 +259,8 @@ NODE and PARENT are ignored."
|
|||
css--treesit-font-lock-feature-list))
|
||||
"Settings for `treesit-font-lock-feature-list'.")
|
||||
|
||||
(defvar mhtml-ts-mode--treesit-font-lock-settings-cached nil
|
||||
"Cached tree-sitter font-lock settings for `mhtml-ts-mode'.")
|
||||
|
||||
(defun mhtml-ts-mode--treesit-font-lock-settings ()
|
||||
"Return tree-sitter font-lock settings for `mhtml-ts-mode'.
|
||||
|
||||
Tree-sitter font-lock settings are evaluated the first time this
|
||||
function is called. Subsequent calls return the first evaluated value."
|
||||
(or mhtml-ts-mode--treesit-font-lock-settings-cached
|
||||
(setq mhtml-ts-mode--treesit-font-lock-settings-cached
|
||||
"Return tree-sitter font-lock settings for `mhtml-ts-mode'."
|
||||
(append html-ts-mode--font-lock-settings
|
||||
(js--treesit-font-lock-settings)
|
||||
;; Let's replace a css rule with a new one that adds
|
||||
|
|
@ -280,7 +272,7 @@ function is called. Subsequent calls return the first evaluated value."
|
|||
:feature 'variable
|
||||
'((plain_value) @mhtml-ts-mode--colorize-css-value
|
||||
(color_value) @mhtml-ts-mode--colorize-css-value))
|
||||
css--treesit-settings)))))
|
||||
css--treesit-settings)))
|
||||
|
||||
(defvar mhtml-ts-mode--treesit-thing-settings
|
||||
;; In addition to putting together the various definitions, we need to
|
||||
|
|
@ -300,16 +292,8 @@ function is called. Subsequent calls return the first evaluated value."
|
|||
`((defun ,css--treesit-defun-type-regexp))))
|
||||
"Settings for `treesit-thing-settings'.")
|
||||
|
||||
(defvar mhtml-ts-mode--treesit-indent-rules-cached nil
|
||||
"Cached tree-sitter indent rules for `mhtml-ts-mode'.")
|
||||
|
||||
(defun mhtml-ts-mode--treesit-indent-rules ()
|
||||
"Return tree-sitter indent rules for `mhtml-ts-mode'.
|
||||
|
||||
Tree-sitter indent rules are evaluated the first time this function
|
||||
is called. Subsequent calls return the first evaluated value."
|
||||
(or mhtml-ts-mode--treesit-indent-rules-cached
|
||||
(setq mhtml-ts-mode--treesit-indent-rules-cached
|
||||
"Return tree-sitter indent rules for `mhtml-ts-mode'."
|
||||
(treesit--indent-rules-optimize
|
||||
(append html-ts-mode--indent-rules
|
||||
;; Extended rules for js and css, to indent
|
||||
|
|
@ -327,7 +311,7 @@ is called. Subsequent calls return the first evaluated value."
|
|||
mhtml-ts-mode--js-css-tag-bol
|
||||
mhtml-ts-mode--js-css-indent-offset)))
|
||||
css--treesit-indent-rules
|
||||
:prepend))))))
|
||||
:prepend))))
|
||||
|
||||
(defvar mhtml-ts-mode--treesit-aggregated-simple-imenu-settings
|
||||
`((html ,@html-ts-mode--treesit-simple-imenu-settings)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue