combobulate
elisp-tree-sitter
Our great sponsors
combobulate | elisp-tree-sitter | |
---|---|---|
16 | 21 | |
808 | 803 | |
- | 0.7% | |
9.4 | 6.3 | |
8 days ago | 17 days ago | |
Emacs Lisp | Emacs Lisp | |
GNU General Public License v3.0 only | 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.
combobulate
-
Emacs 29.1 Released
Eh, I've been looking and haven't found anything for other editors that actually tries to use TreeSitter for anything beyond highlighting. The Emacs structural editing packages are still very WIP but at least they exist.
(And also some have been based on the out of tree implementation that's been around for a while now)
Example: https://github.com/mickeynp/combobulate
-
Indent with tree-sitter is nice
Looking at https://github.com/mickeynp/combobulate/blob/master/combobulate-python.el, it at the very least delegates to python-indent-calculate-levels, so the logic is mixed.
- Paredit-like features in non-lisp modes?
-
Could you guys share your experience with different python dev set-ups (elpy, lsp, etc)? What is more simple/beginer friendly?
I went from an old config rich setups from before lsp's to lsp-mode ones etc... Right now I would say that eglot + pylsp gives you the best experience, you can use pyenv and pyvenv mode to manage your virtual environments. Now that treesitter is also being used you can try out https://github.com/mickeynp/combobulate
-
ts-movement: a package to navigate the tree-sitter syntax tree (supports multiple-cursors)
I think the following packages would fit your wishlist, as it is very similar to mine. As mentioned in the replies, there is (https://github.com/magnars/expand-region.el) and (https://github.com/mickeynp/combobulate). I regularly use (https://github.com/Fuco1/smartparens).
-
noob question about tree-sitter in the presence of lsp-mode
re syntactic text objects: https://github.com/mickeynp/combobulate
-
paredit based on treesitter
I haven't used it, but based on the description, it looks like combobulate would be an example of this:
-
Ask HN: S/W development text editor have feature colorizing every iteration?
from github README.rst "Emacs package that provides a standardized framework for manipulating and navigating your source code using tree sitter's concrete syntax tree " -> https://github.com/mickeynp/combobulate
https://www.spacemacs.org/ with https://github.com/emacs-tree-sitter/elisp-tree-sitter then write a iterator/loop query for language(s) editing per https://tree-sitter.github.io/tree-sitter/syntax-highlightin...
tad less installation heavy (sorta) but also makes use of tree-sitter syntax queries : https://www.lunarvim.org (neovim with treesitter syntax)
blockman usage examples: https://www.youtube.com/channel/UC5539gDeAdWqeXcczWuhnBA
Alternative examples / takes (per user interface):
### embedding a block of source code in a document:
** carrotsearch.gethub.io/apidocs/code-blocks
-
Commercial-Emacs
I don't know what this fork brings to table, but you could try tree-sitter today with your vanilla Emacs using a package[1] that works via dynamic module.
Personally I am more interested in getting structural selection and navigation reliably working for any language. There is also a package named combobulate[2] to help with that.
[1] https://emacs-tree-sitter.github.io/
[2] https://github.com/mickeynp/combobulate
-
tree-sitter highlighting rocks
TIL https://github.com/mickeynp/combobulate Thank you, @snafuchs !
elisp-tree-sitter
-
How to Get Started with Tree-Sitter
Look at the original integration project https://github.com/emacs-tree-sitter/elisp-tree-sitter, before it was done inside Emacs 29+.
-
function to mark all within brackets, quotes, etc
When tree-sitter is available you may extend expand-region with this one one https://github.com/emacs-tree-sitter/elisp-tree-sitter/issues/20 Works very nice for me. But simple matching pairs should be handled well by expand-region alone
-
How to use Emacs 29 Tree-sitter?
That said, if you want a more complete experience with tree-sitter right now, there’s a 3rd party implementation with support for a lot more languages, and also automatically downloads all supported grammars. It’s available here: https://github.com/emacs-tree-sitter/elisp-tree-sitter
-
why is melpa still necessary for stuff that is built-in to emacs?
Just like there are multiple LSP implementations for emacs (lsp-mode, eglot, lsp-bridge), there are multiple tree-sitter implementations. The one recently included in emacs was never a standalone package, I believe (correct me if that’s wrong), but was created with the purpose of being included in emacs. You will need melpa to download the linked elisp-tree-sitter package (https://github.com/emacs-tree-sitter/elisp-tree-sitter), but not the built in one.
-
tree-sitter has been merged into master
How am I going to even use the built-in one? I was using elisp-tree-sitter. I know I have to add grammar for different languages, but how? I have been searching for a while and still have no clue.
-
Ask HN: S/W development text editor have feature colorizing every iteration?
from github README.rst "Emacs package that provides a standardized framework for manipulating and navigating your source code using tree sitter's concrete syntax tree " -> https://github.com/mickeynp/combobulate
https://www.spacemacs.org/ with https://github.com/emacs-tree-sitter/elisp-tree-sitter then write a iterator/loop query for language(s) editing per https://tree-sitter.github.io/tree-sitter/syntax-highlightin...
tad less installation heavy (sorta) but also makes use of tree-sitter syntax queries : https://www.lunarvim.org (neovim with treesitter syntax)
blockman usage examples: https://www.youtube.com/channel/UC5539gDeAdWqeXcczWuhnBA
Alternative examples / takes (per user interface):
### embedding a block of source code in a document:
** carrotsearch.gethub.io/apidocs/code-blocks
-
regarding feature/tree-sitter branch
However, if you want to use tree-sitter today, there is the tree-sitter package which enables tree-sitter syntax highlighting in a number of popular major modes. I’ve been using it for about six months now in all major modes it supports.
-
how to configure doom emacs (generic emacs too) with a C project
Tree Sitter and lsp-mode might be of help. Looks like both take a bit of work to get going. I have personally not used them, so try out which suits you and let us know how it went.
-
Commercial-Emacs
You can use tree-sitter already if you have dynamic module support: https://github.com/emacs-tree-sitter/elisp-tree-sitter
- Are we living in the golden age of Emacs?
What are some alternatives?
tree-sitter-org - Org grammar for tree-sitter
tree-sitter-go - Go grammar for tree-sitter
evil-textobj-tree-sitter - Tree-sitter powered textobjects for evil mode in Emacs
tree-sitter - An incremental parsing system for programming tools
tree-sitter-norg - A TreeSitter parser for the Neorg File Format
typescript.el - TypeScript-support for Emacs
commercial-emacs - "Evil will always triumph, because good is dumb." -- Spaceballs (1987)
lsp-treemacs - lsp-mode :heart: treemacs
neorg - Modernity meets insane extensibility. The future of organizing your life in Neovim.
tree-sitter-ruby - Ruby grammar for tree-sitter
smartparens - Minor mode for Emacs that deals with parens pairs and tries to be smart about it.
tree-sitter-kotlin - Kotlin grammar for Tree-sitter