tree-sitter-typescript
TypeScript grammar for tree-sitter (by tree-sitter)
tsi.el
treesitter-based indendentation for emacs 28 and 27 (by orzechowskid)
SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
surveyjs.io
featured
tree-sitter-typescript | tsi.el | |
---|---|---|
10 | 5 | |
312 | 46 | |
3.2% | - | |
6.7 | 0.0 | |
19 days ago | over 1 year ago | |
JavaScript | Emacs Lisp | |
MIT License | GNU General Public License v3.0 only |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.
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-typescript
Posts with mentions or reviews of tree-sitter-typescript.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-09-14.
- Let's write an Emacs treesitter major mode
-
How to make `goto_next_test` and `goto_prev_test` work?
I believe goto_next_test requires support from the tree-sitter parser, specifically tree-sitter-javascript in the case of JS and tree-sitter-typescript in the case of TS.
-
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 an official language spec and/or lexical grammar for TS?
If you need to do efficient AST operations, have you considered treesitter? There is a typescript grammar available https://github.com/tree-sitter/tree-sitter-typescript
- tree-sitter-typescript: TypeScript grammar for tree-sitter
-
Really sick of the shoddy jsx/tsx handling....would anyone be willing to help me write a major-mode for it?
I am curious though, why did you write your own indentation tool? (It works super well btw, amazing work) I thought tree-sitter supported tsx (and found repos like this) so just wondering if you tried those and they didn't work so you wrote your own.
-
Treesitter : Proposal for more precise syntax highlighting
Please have a look at it - https://github.com/tree-sitter/tree-sitter-typescript/issues/177
-
Plugins to help writing a new tree-sitter parser?
You can see a much more in-depth version at https://github.com/tree-sitter/tree-sitter-typescript or https://github.com/tree-sitter/tree-sitter-rust
-
Help Fixing Plugin ( Syntax Plugin ) + RegEx
https://github.com/nvim-treesitter/nvim-treesitter https://github.com/tree-sitter/tree-sitter-typescript
tsi.el
Posts with mentions or reviews of tsi.el.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-07-27.
-
Does Anyone Have A Working Emacs Config For Indenting JSX Files On The Fly?
I've been building out tsi.el - an emacs minor mode which performs indentation based on a CST returned by tree-sitter. please give it a try if you haven't already, and if you have tried it and it did not meet your needs then I'd love to hear why not!
-
A new SML mode for Emacs built on (a new Standard ML grammar for) tree-sitter
I'd really like to see something that combines the conciseness of SMIE's rule-based indentation system with tree-sitter's richer grammar. There are a couple of projects that I'm looking at, such as https://codeberg.org/FelipeLema/tree-sitter-indent.el and https://github.com/orzechowskid/tsi.el).
-
New to Emacs having problems with Treesitter
;; use our derived mode for tsx files (add-to-list 'auto-mode-alist '("\.tsx\'" . typescriptreact-mode)) ;; by default, typescript-mode is mapped to the treesitter typescript parser ;; use our derived mode to map .tsx -> typescriptreact-mode -> treesitter tsx (add-to-list 'tree-sitter-major-mode-language-alist '(typescriptreact-mode . tsx)) ;; https://github.com/orzechowskid/tsi.el/ ;; great tree-sitter-based indentation for typescript/tsx, css, json (quelpa '(tsi :fetcher github :repo "orzechowskid/tsi.el")) (add-hook 'typescript-mode-hook (lambda () (tsi-typescript-mode 1)))) ```
-
Really sick of the shoddy jsx/tsx handling....would anyone be willing to help me write a major-mode for it?
what are your specific problems? lsp, typescript-mode, and tree-sitter-mode together give me 90% of what I need. I fixed JSX/TSX indentation with a little tool I built (which I should really get around to publishing some day). I'm extremely happy with this setup and use it every day on professional and personal projects.
What are some alternatives?
When comparing tree-sitter-typescript and tsi.el you can also consider the following projects:
tree-sitter-haskell - Haskell grammar for tree-sitter.
jtsx - Extends Emacs JSX/TSX built-in support.
nvim-treesitter - Nvim Treesitter configurations and abstraction layer
combobulate - Structured Editing and Navigation in Emacs with Tree-Sitter
swc - Rust-based platform for the Web
tsx-mode.el - a batteries-included Emacs major mode for Typescript, Javascript, TSX, and JSX files
vim-jsx-typescript - React JSX syntax highlighting for vim and Typescript
eglot - A client for Language Server Protocol servers
tree-sitter-c-sharp - C# Grammar for tree-sitter
elisp-tree-sitter - Emacs Lisp bindings for tree-sitter
tree-sitter-python - Python grammar for tree-sitter
smelt - Forging Standard ML (SML) in emacs
tree-sitter-typescript vs tree-sitter-haskell
tsi.el vs jtsx
tree-sitter-typescript vs nvim-treesitter
tsi.el vs combobulate
tree-sitter-typescript vs swc
tsi.el vs tsx-mode.el
tree-sitter-typescript vs vim-jsx-typescript
tsi.el vs eglot
tree-sitter-typescript vs tree-sitter-c-sharp
tsi.el vs elisp-tree-sitter
tree-sitter-typescript vs tree-sitter-python
tsi.el vs smelt