From d86f6c4490239d5cecd8818e1c1266ae5f255d87 Mon Sep 17 00:00:00 2001 From: Jim Myhrberg Date: Tue, 19 Apr 2022 00:59:20 +0100 Subject: [PATCH] feat(language): enable tree-sitter for most languages that are supported --- modules/languages/siren-css.el | 2 ++ modules/languages/siren-golang.el | 2 -- modules/languages/siren-js.el | 2 ++ modules/languages/siren-json.el | 5 ++++- modules/languages/siren-php.el | 2 ++ modules/languages/siren-ruby.el | 2 ++ modules/languages/siren-rust.el | 2 ++ modules/languages/siren-sh.el | 5 ++++- modules/languages/siren-typescript.el | 15 +++++++++------ modules/text-editing/siren-tree-sitter.el | 6 +++++- 10 files changed, 32 insertions(+), 11 deletions(-) diff --git a/modules/languages/siren-css.el b/modules/languages/siren-css.el index 207a8ba..8ae2f01 100644 --- a/modules/languages/siren-css.el +++ b/modules/languages/siren-css.el @@ -9,6 +9,7 @@ (require 'siren-lsp) (require 'siren-prettier-js) (require 'siren-rainbow) +(require 'siren-tree-sitter) (use-package css-mode :mode "\\.css\\'" @@ -23,6 +24,7 @@ (defun siren-css-mode-setup () (setq tab-width 2) + (tree-sitter-mode +1) (prettier-js-mode) (lsp-deferred) (rainbow-mode +1))) diff --git a/modules/languages/siren-golang.el b/modules/languages/siren-golang.el index 7d4eacd..ff4b662 100644 --- a/modules/languages/siren-golang.el +++ b/modules/languages/siren-golang.el @@ -44,8 +44,6 @@ (auto-highlight-symbol-mode -1)) (tree-sitter-mode +1) - (tree-sitter-hl-mode +1) - (siren-display-indentation -1) (siren-folding) (subword-mode +1)) diff --git a/modules/languages/siren-js.el b/modules/languages/siren-js.el index 8556005..67e12d0 100644 --- a/modules/languages/siren-js.el +++ b/modules/languages/siren-js.el @@ -8,6 +8,7 @@ (require 'siren-folding) (require 'siren-lsp) +(require 'siren-tree-sitter) (use-package js-mode :straight (:type built-in) @@ -31,6 +32,7 @@ indent-level width tab-width width)) + (tree-sitter-mode +1) (subword-mode) (siren-folding))) diff --git a/modules/languages/siren-json.el b/modules/languages/siren-json.el index 3950ac4..c818566 100644 --- a/modules/languages/siren-json.el +++ b/modules/languages/siren-json.el @@ -9,6 +9,7 @@ (require 'siren-folding) (require 'siren-js) (require 'siren-lsp) +(require 'siren-tree-sitter) (use-package json-mode :mode "\\.json\\'" @@ -28,7 +29,9 @@ (let ((width 2)) (setq js-indent-level width json-reformat:indent-width width - tab-width width)))) + tab-width width)) + + (tree-sitter-mode +1))) (use-package lsp-json :straight lsp-mode diff --git a/modules/languages/siren-php.el b/modules/languages/siren-php.el index b867417..485adc8 100644 --- a/modules/languages/siren-php.el +++ b/modules/languages/siren-php.el @@ -9,6 +9,7 @@ (require 'siren-folding) (require 'siren-prettier-js) (require 'siren-rainbow) +(require 'siren-tree-sitter) (use-package php-mode :interpreter "php" @@ -18,6 +19,7 @@ :init (defun siren-php-mode-setup () + (tree-sitter-mode +1) (prettier-js-mode) (rainbow-mode +1) (subword-mode +1) diff --git a/modules/languages/siren-ruby.el b/modules/languages/siren-ruby.el index 1e68ac6..5ddeaf0 100644 --- a/modules/languages/siren-ruby.el +++ b/modules/languages/siren-ruby.el @@ -12,6 +12,7 @@ (require 'siren-projectile) (require 'siren-string-inflection) (require 'siren-toggle-quotes) +(require 'siren-tree-sitter) (use-package ruby-mode :straight (:type built-in) @@ -63,6 +64,7 @@ ruby-use-smie t tab-width 2) + (tree-sitter-mode +1) (siren-folding) (subword-mode +1)) diff --git a/modules/languages/siren-rust.el b/modules/languages/siren-rust.el index 4f001d3..1d054c1 100644 --- a/modules/languages/siren-rust.el +++ b/modules/languages/siren-rust.el @@ -8,6 +8,7 @@ (require 'siren-folding) (require 'siren-lsp) +(require 'siren-tree-sitter) (use-package rust-mode :mode "\\.rs\\'" @@ -24,6 +25,7 @@ (defun siren-rust-mode-setup () (setq rust-format-on-save t) + (tree-sitter-mode +1) (lsp-deferred) (siren-folding) (subword-mode +1))) diff --git a/modules/languages/siren-sh.el b/modules/languages/siren-sh.el index d4348df..9fd416e 100644 --- a/modules/languages/siren-sh.el +++ b/modules/languages/siren-sh.el @@ -6,6 +6,8 @@ ;;; Code: +(require 'siren-tree-sitter) + (use-package sh-script :straight (:type built-in) :mode @@ -36,7 +38,8 @@ (setq tab-width 2 whitespace-action '(auto-cleanup)) - (subword-mode +1))) + (subword-mode +1) + (tree-sitter-mode +1))) (use-package lsp-bash :straight lsp-mode diff --git a/modules/languages/siren-typescript.el b/modules/languages/siren-typescript.el index 280b777..00ed609 100644 --- a/modules/languages/siren-typescript.el +++ b/modules/languages/siren-typescript.el @@ -10,6 +10,7 @@ (require 'siren-folding) (require 'siren-lsp) (require 'siren-prettier-js) +(require 'siren-tree-sitter) (require 'siren-web-mode) (use-package typescript-mode @@ -39,11 +40,7 @@ (typescript-mode . siren-tide-mode-setup) (web-mode . siren-tide-web-mode-setup) - :init - (add-to-list 'auto-mode-alist '("\\.tsx\\'" . web-mode)) - (with-eval-after-load 'flycheck - (flycheck-add-mode 'typescript-tslint 'web-mode)) - + :preface (defun siren-tide-web-mode-setup () (when (string-equal "tsx" (file-name-extension buffer-file-name)) (siren-tide-mode-setup))) @@ -55,10 +52,16 @@ (setq flycheck-check-syntax-automatically '(save mode-enabled) company-tooltip-align-annotations t) + (tree-sitter-mode +1) (prettier-js-mode +1) (flycheck-mode +1) (eldoc-mode +1) - (tide-hl-identifier-mode +1))) + (tide-hl-identifier-mode +1)) + + :init + (add-to-list 'auto-mode-alist '("\\.tsx\\'" . web-mode)) + (with-eval-after-load 'flycheck + (flycheck-add-mode 'typescript-tslint 'web-mode))) (provide 'siren-typescript) ;;; siren-typescript.el ends here diff --git a/modules/text-editing/siren-tree-sitter.el b/modules/text-editing/siren-tree-sitter.el index 436a99a..8560759 100644 --- a/modules/text-editing/siren-tree-sitter.el +++ b/modules/text-editing/siren-tree-sitter.el @@ -6,9 +6,13 @@ ;;; Code: -(use-package tree-sitter) +(use-package tree-sitter + :defer t) (use-package tree-sitter-langs + :hook + (tree-sitter-after-on . tree-sitter-hl-mode) + :config (tree-sitter-hl-add-patterns 'go ;; from: https://github.com/tree-sitter/tree-sitter-go/pull/61