mirror of
https://github.com/jimeh/.emacs.d.git
synced 2026-02-19 13:46:41 +00:00
tree-sitter-mode does not play nice with scss-mode, and results in the buffer having no syntax highlighting at all.
47 lines
1.1 KiB
EmacsLisp
47 lines
1.1 KiB
EmacsLisp
;;; siren-tree-sitter.el --- jimeh's Emacs Siren: tree-sitter
|
|
|
|
;;; Commentary:
|
|
|
|
;; Configuration for tree-sitter
|
|
|
|
;;; Code:
|
|
|
|
(use-package tree-sitter
|
|
:hook
|
|
((css-mode
|
|
go-mode
|
|
js-mode
|
|
json-mode
|
|
lua-mode
|
|
nix-mode
|
|
php-mode
|
|
php-mode
|
|
python-mode
|
|
ruby-mode
|
|
rust-mode
|
|
;; terraform-mode ;; Disabled due to frequently locking up Emacs for minutes
|
|
typescript-mode
|
|
yaml-mode) . siren-tree-sitter-mode-enable)
|
|
|
|
:preface
|
|
(defgroup siren-tree-sitter nil
|
|
"Siren specific tweaks to tree-sitter-mode."
|
|
:group 'tree-sitter)
|
|
|
|
(defcustom siren-tree-sitter-incompatible-modes '(scss-mode)
|
|
"List of modes where tree-sitter-mode should not be enabled."
|
|
:type 'boolean
|
|
:group 'siren-tree-sitter)
|
|
|
|
(defun siren-tree-sitter-mode-enable ()
|
|
"Enable tree-sitter-mode if the current major mode is not in the banned list."
|
|
(unless (derived-mode-p siren-tree-sitter-incompatible-modes)
|
|
(tree-sitter-mode t))))
|
|
|
|
(use-package tree-sitter-langs
|
|
:hook
|
|
(tree-sitter-after-on . tree-sitter-hl-mode))
|
|
|
|
(provide 'siren-tree-sitter)
|
|
;;; siren-tree-sitter.el ends here
|