vim-indent-object
Vim plugin that defines a new text object representing lines of code at the same indent level. Useful for python/vim scripts, etc. (by michaeljsmith)
nvim-treesitter-textsubjects
Location and syntax aware text objects which *do what you mean* (by RRethy)
vim-indent-object | nvim-treesitter-textsubjects | |
---|---|---|
15 | 18 | |
729 | 461 | |
- | - | |
3.3 | 4.3 | |
4 months ago | about 1 month ago | |
Vim Script | Scheme | |
MIT License | Apache License 2.0 |
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.
vim-indent-object
Posts with mentions or reviews of vim-indent-object.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-04-14.
-
Is there a plugin to select the parent block of code I am in?
I tried https://github.com/michaeljsmith/vim-indent-object and while it was somewhat promising, it doesn't work correctly.
- Select indented lines in markdown todo list
- Ask HN: Is Vim still worth learning?
- How can it select the inner/outer tag of yaml block
-
Easier way to delete a whole function?
If your function is nicely indented (like your example), you can use an indent object daI delete it. Indent objects are provided by vim-indent-object (more well-known but inactive) and vindent.vim (an extended version by me).
-
vindent.vim v3.0.0
vindent.vim is an alternative to both vim-indentwise and vim-indent-object. The latest version v3.0.0 reimplements every functionality that the two plugin offer, but improved!
-
vindent.vim: a new plugin for indent motions and text objects
I use indent objects from vim-indent-object and indent jumps vim-indentwise alot, but they seem to be dormant for a long time. Also, vim-indentwise provides a lot of unnecessary functionalities IMO, making modifying the source code a bit difficult.
-
Vimrc - How would I set `do` and `end` as delimiter pairs and then have `yid` yank between them?
This isn't exactly what you're looking for, but assuming you've indented everything between do and end, you can use the vim indent object plugin (https://github.com/michaeljsmith/vim-indent-object), then do something like yii, or dii to do it inside the indent.
-
Using Vim for Everything!
I just saw a nice post in /u/medwatt about using vim for VHDL/Verilog and thought I'd contribute a little! * Syntax and error highlight: https://github.com/autozimu/LanguageClient-neovim * Column align: https://github.com/junegunn/vim-easy-align * Remove annoying whitespaces: https://github.com/ntpeters/vim-better-whitespace * Partial (fuzzy) filename search: https://github.com/junegunn/fzf.vim * Outline all declarations inside a file: â €https://github.com/preservim/tagbar * Treat indentations as vim-objects (useful for languages that don't use { }): https://github.com/michaeljsmith/vim-indent-object There is also mouse support in vim for those who want it. Try typing :set mouse=a. Very useful for resizing windows. I also highly recommend you get good at using folds (https://vim.fandom.com/wiki/Folding). It makes it a LOT easier to navigate files. You can save your fold config per-file with :mkview and load it later with :loadview. If I come up with more hints - I'll mention them in the comments!
-
Any vim-indent-object alternative?
Some of the forks https://github.com/michaeljsmith/vim-indent-object/network seem to be quite ahead, you can probably choose and pick a lot of improvements to your fork, then you take over the world!
nvim-treesitter-textsubjects
Posts with mentions or reviews of nvim-treesitter-textsubjects.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2024-02-17.
-
Tree-Sitter
Neovim supports treesitter based selections and "jumps", which I think are awesome
https://www.reddit.com/r/neovim/comments/r10llx/the_most_ama...
Or
https://github.com/RRethy/nvim-treesitter-textsubjects
Helix also supports them by default
- Is there a feature in Neovim similar to Emmet's balance inward and outward in VSCode?
-
Searching for plugin to provide granular treesitter visual mode navigation
nvim-treesitter-textsubjects
- Is there a plugin to select the parent block of code I am in?
-
equivalent to ci{ but for white-space languages?
You could look into treesitter-textobjects and treesitter-textsubjects: they define "smarter" blocks and function boundaries that work relatively well with python and non-parentheses code.
- Is there any neovim plugin that have 'Surround code fragments' functionality like the Jetbrains IDEs?
-
Motion to select a self-closing html/xml/jsx/tsx tag
I haven't got treesitter's own incremental selection working, but this plugin has given me basically the functionality I was after https://github.com/RRethy/nvim-treesitter-textsubjects
-
What do you use treesitter for other than highlighting?
I personally use it for an outline window for my code (aerial.nvim) and quick-selecting code blocks (nvim-treesitter-textsubjects). I've also seen but not used syntax-tree-surfer for code navigation/manipulation and refactoring.nvim for performing refactoring operations. You could also check out awesome-neovim and ctrl-f for "treesitter", though there are many other plugins out there either not on that list or that don't explicitly mention treesitter in their description.
- What are some additional text objects and motions treesitter provides?
-
FAVOURITE PLUGINS
nvim-treesitter-textsubjects while I basically love everything about Treesitter support, this plugin is just super handy when you start to think more than a second how to select the piece of code you like (in fact nothing when it is nothing too trivial from your muscle-mind)
What are some alternatives?
When comparing vim-indent-object and nvim-treesitter-textsubjects you can also consider the following projects:
vim-textobj-user - Vim plugin: Create your own text objects
nvim-ts-hint-textobjects
LanguageClient-neovim - Language Server Protocol (LSP) support for vim and neovim.
nvim-treesitter-textobjects
vim-textobj-indent - Vim plugin: Text objects for indented blocks of lines
hop.nvim - Neovim motions on speed!
neovim-config
orgmode - Orgmode clone written in Lua for Neovim 0.9+.
vim-indentwise - A Vim plugin for indent-level based motion.
treesitter-unit - A Neovim plugin to deal with treesitter units
ts-textobjects - Treesitter textobjects for neovim.
vim-indent-object vs vim-textobj-user
nvim-treesitter-textsubjects vs nvim-ts-hint-textobjects
vim-indent-object vs LanguageClient-neovim
nvim-treesitter-textsubjects vs nvim-treesitter-textobjects
vim-indent-object vs vim-textobj-indent
nvim-treesitter-textsubjects vs hop.nvim
vim-indent-object vs neovim-config
nvim-treesitter-textsubjects vs orgmode
vim-indent-object vs vim-indentwise
nvim-treesitter-textsubjects vs treesitter-unit
vim-indent-object vs nvim-treesitter-textobjects
nvim-treesitter-textsubjects vs ts-textobjects