mirror of
https://github.com/doomemacs/doomemacs
synced 2025-08-31 14:43:40 -05:00
fix(:lang): missing grammar recipes
I removed the grammar recipes in3b58741
to avoid redundancy with the upstream recipes, but didn't realize that those upstream recipes weren't added until Emacs 31, so users on 30 and older would get errors when trying to install any missing grammars. This also establishes a hard dependency between :lang (php +tree-sitter) and :lang ({javascript,web} +tree-sitter). Amend:3b58741522
This commit is contained in:
@@ -30,9 +30,10 @@ This is ignored by ccls.")
|
||||
:hook (c-mode-common . rainbow-delimiters-mode)
|
||||
:init
|
||||
(when (modulep! +tree-sitter)
|
||||
(set-tree-sitter! 'c-mode 'c-ts-mode 'c)
|
||||
(set-tree-sitter! 'c++-mode 'c++-ts-mode 'cpp))
|
||||
|
||||
(set-tree-sitter! 'c-mode 'c-ts-mode
|
||||
'((c :url "https://github.com/tree-sitter/tree-sitter-c")))
|
||||
(set-tree-sitter! 'c++-mode 'c++-ts-mode
|
||||
'((cpp :url "https://github.com/tree-sitter/tree-sitter-cpp"))))
|
||||
:config
|
||||
(set-docsets! '(c-mode c-ts-mode) "C")
|
||||
(set-docsets! '(c++-mode c++-ts-mode) "C++" "Boost")
|
||||
@@ -114,7 +115,8 @@ This is ignored by ccls.")
|
||||
:init
|
||||
(when (and (modulep! +tree-sitter)
|
||||
(boundp 'cmake-ts-mode)) ; 29+ only
|
||||
(set-tree-sitter! 'cmake-mode 'cmake-ts-mode 'cmake))
|
||||
(set-tree-sitter! 'cmake-mode 'cmake-ts-mode
|
||||
'((cmake :url "https://github.com/uyha/tree-sitter-cmake"))))
|
||||
:config
|
||||
(set-docsets! '(cmake-mode cmake-ts-mode) "CMake")
|
||||
(set-popup-rule! "^\\*CMake Help\\*" :size 0.4 :ttl t)
|
||||
|
@@ -2,9 +2,13 @@
|
||||
|
||||
(use-package! csharp-mode
|
||||
:hook (csharp-mode . rainbow-delimiters-mode)
|
||||
:defer t
|
||||
:init
|
||||
(when (modulep! +tree-sitter)
|
||||
(set-tree-sitter! 'csharp-mode 'csharp-ts-mode 'c-sharp))
|
||||
(set-tree-sitter! 'csharp-mode 'csharp-ts-mode
|
||||
'((c-sharp :url "https://github.com/tree-sitter/tree-sitter-c-sharp"
|
||||
:rev "v0.23.1"
|
||||
:commit "362a8a41b265056592a0c3771664a21d23a71392"))))
|
||||
:config
|
||||
(set-formatter! 'csharpier '("csharpier" "format" "--write-stdout")
|
||||
:modes '(csharp-mode csharp-ts-mode))
|
||||
|
@@ -54,12 +54,15 @@
|
||||
highlight-numbers-modelist)))
|
||||
|
||||
|
||||
(use-package! elixir-ts-mode
|
||||
(use-package! elixir-ts-mode ; 30.1+ only
|
||||
:when (modulep! +tree-sitter)
|
||||
:when (fboundp 'elixir-ts-mode) ; 30.1+ only
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'elixir-mode 'elixir-ts-mode '(elixir heex))
|
||||
(set-tree-sitter! 'elixir-mode 'elixir-ts-mode
|
||||
'((elixir :url "https://github.com/elixir-lang/tree-sitter-elixir"
|
||||
:commit "02a6f7fd4be28dd94ee4dd2ca19cb777053ea74e")
|
||||
(heex :url "https://github.com/phoenixframework/tree-sitter-heex"
|
||||
:commit "f6b83f305a755cd49cf5f6a66b2b789be93dc7b9")))
|
||||
:config
|
||||
(+elixir-common-config 'elixir-ts-mode))
|
||||
|
||||
|
@@ -53,7 +53,13 @@
|
||||
:when (fboundp 'go-ts-mode) ; 31.1+ only
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'go-mode 'go-ts-mode '(go gomod gowork))
|
||||
(set-tree-sitter! 'go-mode 'go-ts-mode
|
||||
'((go :url "https://github.com/tree-sitter/tree-sitter-go"
|
||||
:commit "12fe553fdaaa7449f764bc876fd777704d4fb752")
|
||||
(gomod :url "https://github.com/camdencheek/tree-sitter-go-mod"
|
||||
:commit "3b01edce2b9ea6766ca19328d1850e456fde3103")
|
||||
(gowork :url "https://github.com/omertuc/tree-sitter-go-work"
|
||||
:commit "949a8a470559543857a62102c84700d291fc984c")))
|
||||
:config
|
||||
(+go-common-config 'go-ts-mode))
|
||||
|
||||
|
@@ -29,5 +29,5 @@
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'janet-mode 'janet-ts-mode
|
||||
`(janet-simple :url "https://github.com/sogaiu/tree-sitter-janet-simple"
|
||||
:cc ,(if (featurep :system 'windows) "gcc.exe"))))
|
||||
`((janet-simple :url "https://github.com/sogaiu/tree-sitter-janet-simple"
|
||||
:cc ,(if (featurep :system 'windows) "gcc.exe")))))
|
||||
|
@@ -34,12 +34,15 @@ If the depth is 2, the first two directories are removed: net.lissner.game.")
|
||||
;;
|
||||
;;; Common packages
|
||||
|
||||
(use-package! java-ts-mode
|
||||
(use-package! java-ts-mode ; 29.1+ only
|
||||
:when (modulep! +tree-sitter)
|
||||
:when (fboundp 'java-ts-mode) ; 29.1+ only
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'java-mode 'java-ts-mode '(java doxygen)))
|
||||
(set-tree-sitter! 'java-mode 'java-ts-mode
|
||||
'((java :url "https://github.com/tree-sitter/tree-sitter-java"
|
||||
:commit "94703d5a6bed02b98e438d7cad1136c01a60ba2c")
|
||||
(doxygen :url "https://github.com/tree-sitter-grammars/tree-sitter-doxygen"
|
||||
:commit "1e28054cb5be80d5febac082706225e42eff14e6"))))
|
||||
|
||||
|
||||
(use-package! android-mode
|
||||
|
@@ -52,12 +52,17 @@
|
||||
(+javascript-common-config 'js-mode))
|
||||
|
||||
|
||||
(use-package! js-ts-mode
|
||||
(use-package! js-ts-mode ; 29.1+ only
|
||||
:when (modulep! +tree-sitter)
|
||||
:when (fboundp 'js-ts-mode) ; 29.1+ only
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'js-mode 'js-ts-mode 'javascript)
|
||||
(set-tree-sitter! 'js-mode 'js-ts-mode
|
||||
'((javascript :url "https://github.com/tree-sitter/tree-sitter-javascript"
|
||||
:rev "v0.23.0"
|
||||
:commit "108b2d4d17a04356a340aea809e4dd5b801eb40d")
|
||||
(jsdoc :url "https://github.com/tree-sitter/tree-sitter-jsdoc"
|
||||
:rev "v0.23.0"
|
||||
:commit "b253abf68a73217b7a52c0ec254f4b6a7bb86665")))
|
||||
(+javascript-common-config 'js-ts-mode))
|
||||
|
||||
|
||||
@@ -68,12 +73,14 @@
|
||||
(+javascript-common-config 'typescript-mode))
|
||||
|
||||
|
||||
(use-package! typescript-ts-mode
|
||||
(use-package! typescript-ts-mode ; 29.1+ only
|
||||
:when (modulep! +tree-sitter)
|
||||
:when (fboundp 'typescript-ts-mode) ; 29.1+ only
|
||||
:mode "\\.ts\\'"
|
||||
:init
|
||||
(set-tree-sitter! 'typescript-mode 'typescript-ts-mode 'typescript)
|
||||
(set-tree-sitter! 'typescript-mode 'typescript-ts-mode
|
||||
'((typescript :url "https://github.com/tree-sitter/tree-sitter-typescript"
|
||||
:commit "8e13e1db35b941fc57f2bd2dd4628180448c17d5"
|
||||
:source-dir "typescript/src")))
|
||||
:config
|
||||
(+javascript-common-config 'typescript-ts-mode))
|
||||
|
||||
|
@@ -20,12 +20,13 @@
|
||||
"f" #'json-mode-beautify))
|
||||
|
||||
|
||||
(use-package! json-ts-mode
|
||||
(use-package! json-ts-mode ; 29.1+ only
|
||||
:when (modulep! +tree-sitter)
|
||||
:when (fboundp 'json-ts-mode) ; 29.1+ only
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'json-mode 'json-ts-mode 'json)
|
||||
(set-tree-sitter! 'json-mode 'json-ts-mode
|
||||
'((json :url "https://github.com/tree-sitter/tree-sitter-json"
|
||||
:commit "4d770d31f732d50d3ec373865822fbe659e47c75")))
|
||||
:config
|
||||
(when (modulep! +lsp)
|
||||
(add-hook 'json-ts-mode-local-vars-hook #'lsp! 'append)))
|
||||
|
@@ -48,7 +48,8 @@
|
||||
:when (modulep! +tree-sitter)
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'julia-mode 'julia-ts-mode 'julia)
|
||||
(set-tree-sitter! 'julia-mode 'julia-ts-mode
|
||||
'((julia :url "https://github.com/tree-sitter/tree-sitter-julia")))
|
||||
:config
|
||||
(when (modulep! +lsp)
|
||||
(add-hook 'julia-ts-mode-local-vars-hook #'lsp! 'append)))
|
||||
|
@@ -28,10 +28,11 @@
|
||||
|
||||
(use-package! lua-ts-mode
|
||||
:when (modulep! +tree-sitter)
|
||||
:when (fboundp 'lua-ts-mode) ; 30.1+ only
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'lua-mode 'lua-ts-mode 'lua)
|
||||
(set-tree-sitter! 'lua-mode 'lua-ts-mode
|
||||
'((lua :url "https://github.com/tree-sitter-grammars/tree-sitter-lua"
|
||||
:commit "db16e76558122e834ee214c8dc755b4a3edc82a9")))
|
||||
:config
|
||||
(+lua-common-config 'lua-ts-mode))
|
||||
|
||||
|
@@ -126,9 +126,8 @@ capture, the end position, and the output buffer.")
|
||||
:desc "GFM checkbox" "x" #'markdown-toggle-gfm-checkbox)))
|
||||
|
||||
|
||||
(use-package! markdown-ts-mode
|
||||
(use-package! markdown-ts-mode ; 31+ only
|
||||
:when (modulep! +tree-sitter)
|
||||
:when (fboundp 'markdown-ts-mode)
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'markdown-mode 'markdown-ts-mode '(markdown markdown-inline)))
|
||||
|
@@ -79,10 +79,17 @@
|
||||
|
||||
(use-package! php-ts-mode
|
||||
:when (modulep! +tree-sitter)
|
||||
:when (fboundp 'php-ts-mode) ; 30.1+ only
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'php-mode 'php-ts-mode '(php phpdoc))
|
||||
(set-tree-sitter! 'php-mode 'php-ts-mode
|
||||
'((php :url "https://github.com/tree-sitter/tree-sitter-php"
|
||||
:rev "v0.23.11"
|
||||
:commit "f7cf7348737d8cff1b13407a0bfedce02ee7b046"
|
||||
:source-dir "php/src")
|
||||
(phpdoc :url "https://github.com/claytonrcarter/tree-sitter-phpdoc"
|
||||
:commit "03bb10330704b0b371b044e937d5cc7cd40b4999")
|
||||
html css ; requires :lang (web +tree-sitter)
|
||||
javascript jsdoc)) ; requires :lang (javascript +tree-sitter)
|
||||
:config
|
||||
(+php-common-config 'php-ts-mode))
|
||||
|
||||
|
@@ -5,13 +5,15 @@
|
||||
(modulep! :tools lsp))
|
||||
"This module requires (:tools lsp)")
|
||||
|
||||
(assert! (or (not (modulep! +tree-sitter))
|
||||
(modulep! :tools tree-sitter))
|
||||
"This module requires (:tools tree-sitter)")
|
||||
|
||||
(assert! (or (not (modulep! +tree-sitter))
|
||||
(fboundp 'php-ts-mode))
|
||||
"Can't find `php-ts-mode'; Emacs 30.1+ is required")
|
||||
(when (modulep! +tree-sitter)
|
||||
(assert! (modulep! :tools tree-sitter)
|
||||
"This module requires (:tools tree-sitter)")
|
||||
(assert! (fboundp 'php-ts-mode)
|
||||
"Can't find `php-ts-mode'; Emacs 30.1+ is required")
|
||||
(unless (modulep! :lang javascript +tree-sitter)
|
||||
(error! "(:lang (javascript +tree-sitter)) required, but not enabled"))
|
||||
(unless (modulep! :lang web +tree-sitter)
|
||||
(error! "(:lang (web +tree-sitter)) required, but not enabled")))
|
||||
|
||||
(unless (executable-find "php")
|
||||
(warn! "Couldn't find php in your PATH"))
|
||||
|
@@ -20,7 +20,9 @@
|
||||
python-indent-guess-indent-offset-verbose nil)
|
||||
|
||||
(when (modulep! +tree-sitter)
|
||||
(set-tree-sitter! 'python-mode 'python-ts-mode 'python))
|
||||
(set-tree-sitter! 'python-mode 'python-ts-mode
|
||||
'((python :url "https://github.com/tree-sitter/tree-sitter-python"
|
||||
:commit "bffb65a8cfe4e46290331dfef0dbf0ef3679de11"))))
|
||||
|
||||
:config
|
||||
;; HACK: `python-base-mode' (and `python-ts-mode') don't exist on pre-29
|
||||
|
@@ -36,12 +36,13 @@
|
||||
"{" #'ruby-toggle-block))
|
||||
|
||||
|
||||
(use-package! ruby-ts-mode
|
||||
(use-package! ruby-ts-mode ; 29.1+ only
|
||||
:when (modulep! +tree-sitter)
|
||||
:when (fboundp 'ruby-ts-mode) ; 29.1+ only
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'ruby-mode 'ruby-ts-mode 'ruby)
|
||||
(set-tree-sitter! 'ruby-mode 'ruby-ts-mode
|
||||
'((ruby :url "https://github.com/tree-sitter/tree-sitter-ruby"
|
||||
:commit "71bd32fb7607035768799732addba884a37a6210")))
|
||||
:config
|
||||
(set-electric! 'ruby-ts-mode :words '("else" "end" "elsif"))
|
||||
(set-repl-handler! 'ruby-ts-mode #'inf-ruby)
|
||||
|
@@ -33,12 +33,16 @@
|
||||
(require 'rustic-mode nil t)))
|
||||
|
||||
|
||||
(use-package! rust-ts-mode
|
||||
(use-package! rust-ts-mode ; 29.1+ only
|
||||
:when (modulep! +tree-sitter)
|
||||
:when (fboundp 'rust-ts-mode) ; 29.1+ only
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'rust-mode 'rust-ts-mode 'rust)
|
||||
(set-tree-sitter! 'rust-mode 'rust-ts-mode
|
||||
`((rust :url "https://github.com/tree-sitter/tree-sitter-rust"
|
||||
:commit ,(if (and (treesit-available-p)
|
||||
(< (treesit-library-abi-version) 15))
|
||||
"1f63b33efee17e833e0ea29266dd3d713e27e321"
|
||||
"18b0515fca567f5a10aee9978c6d2640e878671a"))))
|
||||
|
||||
(add-to-list 'major-mode-remap-defaults '(rust-mode . rust-ts-mode) t))
|
||||
|
||||
|
@@ -74,9 +74,11 @@ If set to `nil', disable all the above behaviors.")
|
||||
:append #'lsp!))
|
||||
|
||||
|
||||
(use-package! css-ts-mode
|
||||
(use-package! css-ts-mode ; 29.1+ only
|
||||
:when (modulep! +tree-sitter)
|
||||
:when (fboundp 'css-ts-mode) ; 29.1+ only
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'css-mode 'css-ts-mode 'css))
|
||||
(set-tree-sitter! 'css-mode 'css-ts-mode
|
||||
'((css :url "https://github.com/tree-sitter/tree-sitter-css"
|
||||
:rev "v0.23.0"
|
||||
:commit "6a442a3cf461b0ce275339e5afa178693484c927"))))
|
||||
|
@@ -168,17 +168,18 @@
|
||||
:append #'lsp!))
|
||||
|
||||
|
||||
(use-package! html-ts-mode
|
||||
(use-package! html-ts-mode ; 30.1+ only
|
||||
:when (modulep! +tree-sitter)
|
||||
:when (fboundp 'html-ts-mode) ; 30.1+ only
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'html-mode 'html-ts-mode 'html))
|
||||
(set-tree-sitter! 'html-mode 'html-ts-mode
|
||||
'((html :url "https://github.com/tree-sitter/tree-sitter-html"
|
||||
:rev "v0.23.0"
|
||||
:commit "6a442a3cf461b0ce275339e5afa178693484c927"))))
|
||||
|
||||
|
||||
(use-package! mhtml-ts-mode
|
||||
(use-package! mhtml-ts-mode ; 31+ only
|
||||
:when (modulep! +tree-sitter)
|
||||
:when (fboundp 'mhtml-ts-mode) ; 31+ only
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'mhtml-mode 'mhtml-ts-mode 'html))
|
||||
|
@@ -8,11 +8,13 @@
|
||||
(setq-hook! 'yaml-mode-hook tab-width yaml-indent-offset))
|
||||
|
||||
|
||||
(use-package! yaml-ts-mode
|
||||
(use-package! yaml-ts-mode ; 29.1+ only
|
||||
:when (modulep! +tree-sitter)
|
||||
:when (fboundp 'yaml-ts-mode) ; 29.1+ only
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'yaml-mode 'yaml-ts-mode 'yaml)
|
||||
(set-tree-sitter! 'yaml-mode 'yaml-ts-mode
|
||||
'((yaml :url "https://github.com/tree-sitter-grammars/tree-sitter-yaml"
|
||||
:commit "b733d3f5f5005890f324333dd57e1f0badec5c87")))
|
||||
:config
|
||||
(when (modulep! +lsp)
|
||||
(add-hook 'yaml-ts-mode-local-vars-hook #'lsp! 'append)))
|
||||
|
@@ -10,7 +10,8 @@
|
||||
|
||||
(use-package! dockerfile-ts-mode
|
||||
:when (modulep! +tree-sitter)
|
||||
:when (fboundp 'dockerfile-ts-mode) ; 29.1+ only
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'dockerfile-mode 'dockerfile-ts-mode 'dockerfile))
|
||||
(set-tree-sitter! 'dockerfile-mode 'dockerfile-ts-mode
|
||||
'((dockerfile :url "https://github.com/camdencheek/tree-sitter-dockerfile"
|
||||
:commit "087daa20438a6cc01fa5e6fe6906d77c869d19fe"))))
|
||||
|
@@ -45,7 +45,7 @@
|
||||
(if-let* ((ts (get mode '+tree-sitter))
|
||||
(fallback-mode (car ts)))
|
||||
(cond ((not (fboundp mode))
|
||||
(message "Couldn't find %S, falling back to %S" mode fallback-mode)
|
||||
(message "Couldn't find `%S', falling back to `%S'" mode fallback-mode)
|
||||
fallback-mode)
|
||||
((and (or (eq treesit-enabled-modes t)
|
||||
(memq fallback-mode treesit-enabled-modes))
|
||||
|
Reference in New Issue
Block a user