summaryrefslogtreecommitdiff
path: root/admin/notes/tree-sitter/build-module
AgeCommit message (Collapse)Author
2025-04-18Lock tree-sitter language grammars to verified versions.Juri Linkov
* admin/notes/tree-sitter/build-module/build.sh: Update org for toml/yaml. * admin/tree-sitter/treesit-admin.el (treesit-admin--builtin-language-sources): Add verified versions. * lisp/progmodes/c-ts-mode.el: Append language source to treesit-language-source-alist. (c-ts-mode, c++-ts-mode): Use treesit-ensure-installed. * lisp/progmodes/cmake-ts-mode.el: Append language source to treesit-language-source-alist. (cmake-ts-mode): Use treesit-ensure-installed. * lisp/progmodes/csharp-mode.el: Append language source to treesit-language-source-alist. (csharp-ts-mode): Use treesit-ensure-installed. * lisp/progmodes/dockerfile-ts-mode.el: Append language source to treesit-language-source-alist. (dockerfile-ts-mode): Use treesit-ensure-installed. * lisp/progmodes/elixir-ts-mode.el: Append language source to treesit-language-source-alist. (elixir-ts-mode): Use treesit-ensure-installed. * lisp/progmodes/go-ts-mode.el: Append language source to treesit-language-source-alist. (go-ts-mode, go-mod-ts-mode, go-work-ts-mode): Use treesit-ensure-installed. * lisp/progmodes/heex-ts-mode.el: Append language source to treesit-language-source-alist. (heex-ts-mode): Use treesit-ensure-installed. * lisp/progmodes/java-ts-mode.el: Append language source to treesit-language-source-alist. (java-ts-mode): Use treesit-ensure-installed. * lisp/progmodes/js.el: Append language source to treesit-language-source-alist. (js-ts-mode): Use treesit-ensure-installed. * lisp/progmodes/json-ts-mode.el: Append language source to treesit-language-source-alist. (json-ts-mode): Use treesit-ensure-installed. * lisp/progmodes/lua-ts-mode.el: Append language source to treesit-language-source-alist. (lua-ts-mode): Use treesit-ensure-installed. * lisp/progmodes/php-ts-mode.el (php-ts-mode--language-source-alist): Update versions from comments in ts-modes. Append to treesit-language-source-alist. (php-ts-mode-install-parsers): Use treesit-language-source-alist directly. (php-ts-mode): Use treesit-ensure-installed. * lisp/progmodes/ruby-ts-mode.el: Append language source to treesit-language-source-alist. (ruby-ts-mode): Use treesit-ensure-installed. * lisp/progmodes/rust-ts-mode.el: Append language source to treesit-language-source-alist. (rust-ts-mode): Use treesit-ensure-installed. * lisp/progmodes/sh-script.el: Append language source to treesit-language-source-alist. (bash-ts-mode): Use treesit-ensure-installed. * lisp/progmodes/typescript-ts-mode.el: Append language source to treesit-language-source-alist. (typescript-ts-mode, tsx-ts-mode): Use treesit-ensure-installed. * lisp/textmodes/css-mode.el: Append language source to treesit-language-source-alist. (css-ts-mode): Use treesit-ensure-installed. * lisp/textmodes/html-ts-mode.el: Append language source to treesit-language-source-alist. (html-ts-mode): Use treesit-ensure-installed. * lisp/textmodes/markdown-ts-mode.el: Append language source to treesit-language-source-alist. (markdown-ts-mode): Use treesit-ensure-installed. * lisp/textmodes/mhtml-ts-mode.el (mhtml-ts-mode--language-source-alist): Append to treesit-language-source-alist. (mhtml-ts-mode-install-parsers): Use treesit-language-source-alist directly. (mhtml-ts-mode): Use treesit-ensure-installed. * lisp/textmodes/toml-ts-mode.el: Append language source to treesit-language-source-alist. (toml-ts-mode): Use treesit-ensure-installed. * lisp/textmodes/yaml-ts-mode.el: Append language source to treesit-language-source-alist. (yaml-ts-mode): Use treesit-ensure-installed. * test/infra/Dockerfile.emba: Add verified versions to treesit-language-source-alist.
2025-02-12Add go-work-ts-mode for Go workspace filesGabriel Santos
* lisp/progmodes/eglot.el (eglot-server-programs): Add go-work-ts-mode. * lisp/progmodes/go-ts-mode.el (Commentary): Add the repositories for the grammars. (go-work-ts-mode--indent-rules, go-work-ts-mode--keywords) (go-work-ts-mode--font-lock-settings): New variables. (go-work-ts-mode--directive-matcher, go-work-ts-mode): New functions. (go-mod-ts-mode--directive-matcher): Rename from go-mod-ts-mode--in-directive-p. Be more specific on the directive location (modules). Replace mention of nil with function. Use member instead of pcase to check node types. * admin/notes/tree-sitter/build-module/batch.sh * admin/notes/tree-sitter/build-module/build.sh: Add go-work support. * test/lisp/progmodes/go-ts-mode-resources/font-lock-package.go: * test/lisp/progmodes/go-ts-mode-resources/indent-mod.erts: * test/lisp/progmodes/go-ts-mode-resources/indent-work.erts: New files for testing indentation and font-locking for Go module and workspace files. * test/lisp/progmodes/go-ts-mode-tests.el: Add tests for Go module and workspace files. (Bug#74461) * etc/NEWS: Announce go-work-ts-mode.
2024-02-21; Update URL of the tree-sitter-lua grammarjohn muhl
* admin/notes/tree-sitter/build-module/build.sh: * lisp/progmodes/lua-ts-mode.el: * test/infra/Dockerfile.emba: Use the new URL. (bug#69304)
2024-01-10Add Ruby to the tree-sitter build-module scriptjohn muhl
* admin/notes/tree-sitter/build-module/batch.sh (languages): Add Ruby. (Bug#65739)
2023-09-16bug#65673: Add lua-ts-modebug-gnu-emacs@gnu.org
* lisp/progmodes/lua-ts-mode.el: * test/lisp/progmodes/lua-ts-mode-resources/indent.erts: * test/lisp/progmodes/lua-ts-mode-tests.el: New files. * etc/NEWS: Mention the new mode. * lisp/progmodes/eglot.el (eglot-server-programs): * lisp/progmodes/hideshow.el (hs-special-modes-alist): Support 'lua-ts-mode'. * admin/notes/tree-sitter/build-module/batch.sh: * admin/notes/tree-sitter/build-module/build.sh: Add Lua. * test/infra/Dockerfile.emba: * test/infra/test-jobs.yml: Include lua-ts-mode tests.
2023-09-07Fix java-ts-mode tests (bug#65738)john muhl
* admin/notes/tree-sitter/build-module/batch.sh (languages): Add Java. * lisp/progmodes/java-ts-mode.el (java-ts-mode): Pass a list to 'treesit-thing-settings'.
2023-03-20Merge from origin/emacs-29Stefan Kangas
b7f03333551 Improve warning about changing the string returned by sym... e62f8b0239d Fix visiting XBM/XPM files when 'c-ts-mode' is active 94d1c81cf07 * lisp/mpc.el (mpc-format): Fix oversight in commit 48b6c... a4d97811ed4 Bail early from eglot--apply-text-edits if nothing to do 61d571760b3 ; Clarify in-code commentary of eglot--after-change 5bbbd70f56e Improve ergonomics of Eglot's inlay hints c3a543123ab Protect against too large size of 'recent-keys' vector 231190b37f8 * lisp/net/tramp.el (tramp-yn-prompt-regexp): Fix regexp. 0bebd0e5f09 ; Remove 'build-module' and 'html-manual' directories fro... 6674c362ad9 Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/... 829e5dfabea Update to Org 9.6.1-48-g92471e e84f878e19a ; * admin/notes/tree-sitter/starter-guide: Update starter... ea0949853f8 Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/... 11592bcfda6 ; * lisp/nxml/xmltok.el (xmltok-scan-attributes): Fix las... e388a77cf0b ; Minor copyedits of recent changes in ELisp reference ma... 33a26703689 ; Minor fixes in recent Eglot changes d2cf1386fa4 ; * doc/misc/eglot.texi (Eglot Commands): Improve indexing. b75e489362b ; Again correct node reference casing in doc/misc/eglot.texi a55d2edc5a9 ; Remove overly verbose commentary 22a70451f34 Merge confusing duplicate sections on commands in Eglot m... 3293f939882 Don't take over mouse-1 binding on Eglot diagnostics (bug... 013057e3512 ; Prefer "language server" to "LSP server" in Eglot manual 94a21c88647 * lisp/progmodes/eglot.el (eglot--connect): Improve Tramp... 0eddfa28ebd Avoid slowdowns in xmltok-scan-attributes 647c6bf2a6c ; * test/lisp/abbrev-tests.el (abbrev--possibly-save-test... 531f8f7103a ; * admin/git-bisect-start: Update failing commits # Conflicts: # admin/notes/tree-sitter/build-module/batch.sh # admin/notes/tree-sitter/build-module/build.sh
2023-03-19; Remove 'build-module' and 'html-manual' directories from 'admin'Eli Zaretskii
These files were temporarily in the repository and are no longer needed, once they fulfilled their job.
2023-03-12Add elixir-ts-mode (Bug#61996)Wilhelm H Kirschbaum
* etc/NEWS: Mention the new mode. * lisp/progmodes/elixir-ts-mode.el: New file. * test/lisp/progmodes/elixir-ts-mode-tests.el: New file. * test/lisp/progmodes/elixir-ts-mode-resources/indent.erts: New file. * admin/notes/tree-sitter/build-module/batch.sh: * admin/notes/tree-sitter/build-module/build.sh: Add Elixir support. * lisp/progmodes/eglot.el (eglot-server-programs): Add elixir-ts-mode.
2023-03-12Add heex-ts-mode (Bug#61996)Wilhelm H Kirschbaum
* etc/NEWS: Mention the new mode. * lisp/progmodes/heex-ts-mode.el: New file. * test/lisp/progmodes/heex-ts-mode-tests.el: New file. * test/lisp/progmodes/heex-ts-mode-resources/indent.erts: New file. * admin/notes/tree-sitter/build-module/batch.sh: * admin/notes/tree-sitter/build-module/build.sh: Add HEEx support.
2023-01-25Add support for building tree-sitter modules with MinGWRandy Taylor
* admin/notes/tree-sitter/build-module/build.sh: Add support for building tree-sitter modules with MinGW.
2022-12-16Add yaml-ts-mode (Bug#60105)Randy Taylor
* admin/notes/tree-sitter/build-module/batch.sh: * admin/notes/tree-sitter/build-module/build.sh: Add yaml support. * etc/NEWS: Mention it. * lisp/textmodes/yaml-ts-mode.el: New major mode with tree-sitter support. * lisp/progmodes/eglot.el (eglot-server-programs): Add it.
2022-12-15Add go-ts-mode and go-mod-ts-mode (Bug#60025)Randy Taylor
* admin/notes/tree-sitter/build-module/batch.sh: * admin/notes/tree-sitter/build-module/build.sh: Add go-mod support. * etc/NEWS: Mention them. * lisp/progmodes/eglot.el (eglot-server-programs): Add them. * lisp/progmodes/go-ts-mode.el: New major modes with tree-sitter support.
2022-12-14Introduce support for TOML config-formatJostein Kjønigsen
This commit introduces support for the semi-popular TOML config-format[1] through a new major-mode: toml-ts-mode. I've read through the full spec[2], and from what I can see this major-mode should provide correct syntax-highligting for every sort of config-declaration which adheres to the specification. Besides that it also adds support for imenu and basic tree-sitter based navigation. [1] https://toml.io/en/ [2] https://toml.io/en/v1.0.0
2022-12-13; * admin/notes/tree-sitter/build-module/build.sh: Minor name change.Yuan Fu
2022-12-12; * admin/notes/tree-sitter/build-module/build.sh: Add -fPIC.lu4nx
(bug#59967)
2022-12-12Add cmake-ts-modeRandy Taylor
* admin/notes/tree-sitter/build-module/batch.sh: * admin/notes/tree-sitter/build-module/build.sh: Add cmake support. * etc/NEWS: Mention it. * lisp/progmodes/cmake-ts-mode.el: New major mode with tree-sitter support. * lisp/progmodes/eglot.el (eglot-server-programs): Add it.
2022-12-09Add dockerfile-ts-mode (Bug#59894)Randy Taylor
* admin/notes/tree-sitter/build-module/batch.sh: Add dockerfile support. * admin/notes/tree-sitter/build-module/build.sh: Support different namespaces and add dockerfile support. * etc/NEWS: Mention it. * lisp/progmodes/dockerfile-ts-mode.el: New major mode with tree-sitter support. * lisp/progmodes/eglot.el (eglot-server-programs): Add it.
2022-12-08; Fix typosStefan Kangas
2022-12-06Fix admin/notes/tree-sitter/build-module/build.sh (bug#59789)Yuan Fu
Besides the problem mentioned by Juri, which is fixed by removing -cp tree-sitter-lang.in "tree-sitter-${lang}/src" -cp emacs-module.h "tree-sitter-${lang}/src" (we removed those files in an earlier commit, because they are not used anymore.) Now it also more parameterized and builds typescript and tsx separately. * admin/notes/tree-sitter/build-module/build.sh (topdir) (repo, sourcedir, grammardir): New variables. (Build): Make it parametric. (Copy out): Use absolute path. * admin/notes/tree-sitter/build-module/batch.sh (languages): Add tsx.
2022-11-22; Fix typosStefan Kangas
2022-10-10Fix tree-sitter build script in admin/notesYuan Fu
* admin/notes/tree-sitter/build-module/README: Add explaination. * admin/notes/tree-sitter/build-module/build.sh: change typescript to tsx.
2022-10-05Add tree-sitter admin notesYuan Fu
starter-guide: Guide on writing major mode features. build-module: Script for building official language definitions. html-manual: HTML version of the manual for easy access. * admin/notes/tree-sitter/build-module/README: New file. * admin/notes/tree-sitter/build-module/batch.sh: New file. * admin/notes/tree-sitter/build-module/build.sh: New file. * admin/notes/tree-sitter/starter-guide: New file. * admin/notes/tree-sitter/html-manual/Accessing-Node.html: New file. * admin/notes/tree-sitter/html-manual/Language-Definitions.html: New file. * admin/notes/tree-sitter/html-manual/Multiple-Languages.html: New file. * admin/notes/tree-sitter/html-manual/Parser_002dbased-Font-Lock.html: New file. * admin/notes/tree-sitter/html-manual/Parser_002dbased-Indentation.html: New file. * admin/notes/tree-sitter/html-manual/Parsing-Program-Source.html: New file. * admin/notes/tree-sitter/html-manual/Pattern-Matching.html: New file. * admin/notes/tree-sitter/html-manual/Retrieving-Node.html: New file. * admin/notes/tree-sitter/html-manual/Tree_002dsitter-C-API.html: New file. * admin/notes/tree-sitter/html-manual/Using-Parser.html: New file. * admin/notes/tree-sitter/html-manual/build-manual.sh: New file. * admin/notes/tree-sitter/html-manual/manual.css: New file.