Add customizale faces for tree-sitter explorer
* lisp/treesit.el (treesit-explorer-anonymous-node) (treesit-explorer-field-name): New face. (treesit--explorer-draw-node): Use the new faces. (treesit-explore-mode): Change playground to explorer.
This commit is contained in:
parent
3e349ee119
commit
f2876014ad
1 changed files with 16 additions and 3 deletions
|
@ -1839,6 +1839,18 @@ to the offending pattern and highlight the pattern."
|
||||||
|
|
||||||
;;; Explorer
|
;;; Explorer
|
||||||
|
|
||||||
|
(defface treesit-explorer-anonymous-node
|
||||||
|
(let ((display t)
|
||||||
|
(atts '(:inherit shadow)))
|
||||||
|
`((,display . ,atts)))
|
||||||
|
"Face for anonymous nodes in tree-sitter explorer.")
|
||||||
|
|
||||||
|
(defface treesit-explorer-field-name
|
||||||
|
(let ((display t)
|
||||||
|
(atts nil))
|
||||||
|
`((,display . ,atts)))
|
||||||
|
"Face for field names in tree-sitter explorer.")
|
||||||
|
|
||||||
(defvar-local treesit--explorer-buffer nil
|
(defvar-local treesit--explorer-buffer nil
|
||||||
"Buffer used to display the syntax tree.")
|
"Buffer used to display the syntax tree.")
|
||||||
|
|
||||||
|
@ -2017,7 +2029,8 @@ leaves point at the end of the last line of NODE."
|
||||||
;; draw everything in one line, other wise draw field name and the
|
;; draw everything in one line, other wise draw field name and the
|
||||||
;; rest of the node in two lines.
|
;; rest of the node in two lines.
|
||||||
(when field-name
|
(when field-name
|
||||||
(insert field-name ": ")
|
(insert (propertize (concat field-name ": ")
|
||||||
|
'face 'treesit-explorer-field-name))
|
||||||
(when (and children (not all-children-inline))
|
(when (and children (not all-children-inline))
|
||||||
(insert "\n")
|
(insert "\n")
|
||||||
(indent-to-column (1+ before-field-column))))
|
(indent-to-column (1+ before-field-column))))
|
||||||
|
@ -2076,7 +2089,7 @@ leaves point at the end of the last line of NODE."
|
||||||
(overlay-put ov 'treesit-node node)
|
(overlay-put ov 'treesit-node node)
|
||||||
(overlay-put ov 'evaporate t)
|
(overlay-put ov 'evaporate t)
|
||||||
(when (not named)
|
(when (not named)
|
||||||
(overlay-put ov 'face 'shadow)))))
|
(overlay-put ov 'face 'treesit-explorer-anonymous-node)))))
|
||||||
|
|
||||||
(define-derived-mode treesit--explorer-tree-mode special-mode
|
(define-derived-mode treesit--explorer-tree-mode special-mode
|
||||||
"TS Explorer"
|
"TS Explorer"
|
||||||
|
@ -2095,7 +2108,7 @@ window."
|
||||||
(unless (buffer-live-p treesit--explorer-buffer)
|
(unless (buffer-live-p treesit--explorer-buffer)
|
||||||
(setq-local treesit--explorer-buffer
|
(setq-local treesit--explorer-buffer
|
||||||
(get-buffer-create
|
(get-buffer-create
|
||||||
(format "*tree-sitter playground for %s*"
|
(format "*tree-sitter explorer for %s*"
|
||||||
(buffer-name))))
|
(buffer-name))))
|
||||||
(setq-local treesit--explorer-language
|
(setq-local treesit--explorer-language
|
||||||
(intern (completing-read
|
(intern (completing-read
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue