tree-sitter-go
tree-sitter-html
tree-sitter-go | tree-sitter-html | |
---|---|---|
3 | 3 | |
282 | 120 | |
3.9% | 5.0% | |
6.4 | 7.3 | |
29 days ago | 4 days ago | |
JavaScript | C | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
tree-sitter-go
-
Looking for EBNF / Antlr / yacc for Go with generics
Might the tree-sitter grammar at https://github.com/tree-sitter/tree-sitter-go help at all?
- Building tree-sitter languages for Emacs
-
Tree-sitter: an incremental parsing system for programming tools
Worth calling out that the syntax highlighting support is used to highlight several languages in github.com. (Linguist is still used for the long tail of languages, but we plan to migrate more and more over to tree-sitter-based highlighting over time.)
The query language is also what's used to drive the fuzzy/ctags-like Code Navigation feature. Both of those are powered by tree-sitter query files defined in each language's repo, like these for Go: https://github.com/tree-sitter/tree-sitter-go/tree/master/qu...
tree-sitter-html
-
Emacs and Java Development: Corfu + Cape + LSP-Mode + Treesit
(use-package treesit :ensure nil :custom ;; Some stuff taken from here: https://robbmann.io/posts/emacs-treesit-auto/ (treesit-extra-load-path '("/usr/lib64/")) (treesit-language-source-alist '((bash . ("https://github.com/tree-sitter/tree-sitter-bash")) (c . ("https://github.com/tree-sitter/tree-sitter-c")) (c++ . ("https://github.com/tree-sitter/tree-sitter-cpp")) (csharp . ("https://github.com/tree-sitter/tree-sitter-c-sharp")) (css . ("https://github.com/tree-sitter/tree-sitter-css")) (elixir ("https://github.com/elixir-lang/tree-sitter-elixir")) (html . ("https://github.com/tree-sitter/tree-sitter-html")) (java . ("https://github.com/tree-sitter/tree-sitter-java")) (javascript . ("https://github.com/tree-sitter/tree-sitter-javascript")) (json . ("https://github.com/tree-sitter/tree-sitter-json")) (lua . ("https://github.com/Azganoth/tree-sitter-lua")) (makefile . ("https://github.com/alemuller/tree-sitter-make")) (org . ("https://github.com/milisims/tree-sitter-org")) (python . ("https://github.com/tree-sitter/tree-sitter-python")) (tsx . ("https://github.com/tree-sitter/tree-sitter-typescript" "master" "tsx/src")) (typescript . ("https://github.com/tree-sitter/tree-sitter-typescript" "master" "typescript/src")) (ruby . ("https://github.com/tree-sitter/tree-sitter-ruby")) (rust . ("https://github.com/tree-sitter/tree-sitter-rust")) (sql . ("https://github.com/m-novikov/tree-sitter-sql")) (toml . ("https://github.com/tree-sitter/tree-sitter-toml")) (yaml . ("https://github.com/ikatyang/tree-sitter-yaml")))) (major-mode-remap-alist '((c-mode . c-ts-mode) (c++-mode . c++-ts-mode) (csharp-mode . csharp-ts-mode) (css-mode . css-ts-mode) (html-mode . html-ts-mode) (java-mode . java-ts-mode) (js-mode . js-ts-mode) (json-mode . json-ts-mode) (makefile-mode . makefile-ts-mode) ;; (org-mode . org-ts-mode) ;; not mature yet (python-mode . python-ts-mode) (typescript-mode . typescript-ts-mode) (ruby-mode . ruby-ts-mode) (rust-mode . rust-ts-mode) (toml-mode . toml-ts-mode) (yaml-mode . yaml-ts-mode))) (treesit-auto-fallback-alist '((toml-ts-mode . conf-toml-mode) (typescript-ts-mode . nil) (tsx-ts-mode . nil))) (treesit-font-lock-settings t) (treesit-simple-indent t) (treesit-defun-type-regexp t)) (use-package treesit-auto :demand t :config (setq treesit-auto-install t) (global-treesit-auto-mode))
- Building tree-sitter languages for Emacs
-
Is there a way to inject Vue code inside HTML strings using Treesitter? (Language injection)
https://github.com/tree-sitter/tree-sitter-html/blob/master/queries/injections.scm is the bit of the HTML treesitter parser that says "anything inside script tags is Javascript" and "anything inside style tags is CSS" so highlight those with a seperate parser.
What are some alternatives?
elisp-tree-sitter - Emacs Lisp bindings for tree-sitter
Vince's CSV Parser - A modern C++ library for reading, writing, and analyzing CSV (and similar) files.
Moose - MOOSE - Platform for software and data analysis.
verible - Verible is a suite of SystemVerilog developer tools, including a parser, style-linter, formatter and language server
nvim-treesitter - Nvim Treesitter configurations and abstraction layer
LIEF - LIEF - Library to Instrument Executable Formats
tree-sitter-haskell - Haskell grammar for tree-sitter.
tomlplusplus - Header-only TOML config file parser and serializer for C++17.
tree-sitter - An incremental parsing system for programming tools
maddy - C++ Markdown to HTML header-only parser library
PHP Parser - A PHP parser written in PHP
tree-sitter-markdown - Markdown grammar for tree-sitter