refactoring.nvim
The Refactoring library based off the Refactoring book by Martin Fowler (by ThePrimeagen)
nvim-treesitter-textobjects
By nvim-treesitter
refactoring.nvim | nvim-treesitter-textobjects | |
---|---|---|
37 | 87 | |
2,475 | 1,898 | |
- | 3.7% | |
8.8 | 8.5 | |
about 2 months ago | 7 days ago | |
Lua | 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.
refactoring.nvim
Posts with mentions or reviews of refactoring.nvim.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2024-01-11.
-
My 2024 PDE: NeoVim
Treesitter is a syntax parser that'll build a tree-like structure to enable anything from excellent syntax highlighting through to complex refactoring. There are so many creative ways you can use Treesitter, from jumping around text objects to commenting sections of code, it's a must-have in my books.
-
Refactoring tools
Is there any refactoring plugins for Neovim besides https://github.com/ThePrimeagen/refactoring.nvim?
-
change arguments of a function
refactoring.nvim is, that I know of, the closest we have to IDE-like refactoring features such as this, but does not have this feature. It would make C development much nicer imo. Perhaps a feature request there may gain traction.
-
What does it mean if TSNode:has_changes() returns true? (implementation of command-preview for refactoring.nvim)
I'm trying to make a naive implementation of command-preview for refactoring.nvim. Currently, my naive implementation is working (since the changes made to a buffer for previewing are discarded by neovim, I'm executing the plugin regularly in order to preview the changes and when the user submits the command to make the changes).
-
First PR using NeoVim, but need help moving forward
refactoring.nvim and null-ls.nvim may help
-
In neovim ,how to do refactoring python code?
refactoring.nvim is one option. Unfortunately what powers VSCode is the proprietary PyLance and AFAIK there is no way to "Move symbol to file (method will be moved) [and have imports renamed subsequently]".
- Discussion: what functionality is Vim missing?
-
New Plugin: ruby toolkit
Just a heads up, I added a lot of Ruby support in ThePrimeagen's Refactoring.nvim plugin some time ago. Covers a lot of what you've created and has support for lots of other languages too
-
Treesitter query language
It's a pain to learn. I used the online playground and also read a lot of the queries from popular plugins. I contributed Ruby support to refactoring.nvim which helped me learn a tonne too
-
neovim-related: Are there good refactor plugin for elixir?
You might be able to take the ruby one and make an elixir one. It uses tree-sitter queries which you would need to align up with the elixir, but the syntax is kinda close. See https://github.com/ThePrimeagen/refactoring.nvim/blob/master/lua/refactoring/treesitter/langs/ruby.lua
nvim-treesitter-textobjects
Posts with mentions or reviews of nvim-treesitter-textobjects.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-08-06.
-
Use treesitter to jump to next argument without going into nested function calls?
I was hoping to use nvim-treesitter-textobjects to jump to the next argument via something like this:
-
Code navigation ctags/cscope/gnu global alternative?
You want to look at nvim-treesitter-textobjects. It let's you define keymaps for navigating text objects defined by treesitter and you can also use them with commands like d, c and so on.
-
My Favorite Vim Oneliners for Text Manipulation
Thank you! It looks like nvim-treesitter-textobjects is a good plugin to start with:
https://github.com/nvim-treesitter/nvim-treesitter-textobjec...
-
How to move between the topmost/root node in treesitter?
I'm aware of nvim-treesitter-textobjects and I suspect my answer lies in this plugin, but is there a way to move between root nodes that is agnostic of the node type?
-
Manipulating and moving between function arguments in Neovim
Thanks! I just started using https://github.com/nvim-treesitter/nvim-treesitter-textobjects, and it works as a charm.
-
Searching for plugin to provide granular treesitter visual mode navigation
nvim-treesitter-textobjects
-
Vim Tip - Jump to start of function or code block
In this case, reading here is probably a good start: https://github.com/nvim-treesitter/nvim-treesitter-textobjects
-
Getting v(a|i)B working in Ruby?
Have a look at https://github.com/nvim-treesitter/nvim-treesitter-textobjects. Set up the @block.inner and @block.outer textobjects and it should work.
-
How do you jump to the beginning of a function
nvim-treesitter-textobjects lets you jump to (for instance) functions more accurately than with a regex-based approach using ]f
Or even better, one can use nvim-treesitter-textobjects. It already provides function/class selection and go-to functionality out-of-the-box.
What are some alternatives?
When comparing refactoring.nvim and nvim-treesitter-textobjects you can also consider the following projects:
nvim-lsp-ts-utils - Utilities to improve the TypeScript development experience for Neovim's built-in LSP client.
vim-multiple-cursors - True Sublime Text style multiple selections for Vim
react-extract.nvim - Neovim plugin for extracting jsx into React component
nvim-treesitter-refactor - Refactor module for nvim-treesitter
rust.vim - Vim configuration for Rust.
targets.vim - Vim plugin that provides additional text objects
pyright - Static Type Checker for Python
nvim-treesitter - Nvim Treesitter configurations and abstraction layer
vim-textobj-user - Vim plugin: Create your own text objects
nvim-dap-ruby
vscode-neovim - Vim mode for VSCode, powered by Neovim
refactoring.nvim vs nvim-lsp-ts-utils
nvim-treesitter-textobjects vs vim-multiple-cursors
refactoring.nvim vs react-extract.nvim
nvim-treesitter-textobjects vs nvim-treesitter-refactor
refactoring.nvim vs rust.vim
nvim-treesitter-textobjects vs targets.vim
refactoring.nvim vs pyright
nvim-treesitter-textobjects vs nvim-treesitter
refactoring.nvim vs nvim-treesitter-refactor
nvim-treesitter-textobjects vs vim-textobj-user
refactoring.nvim vs nvim-dap-ruby
nvim-treesitter-textobjects vs vscode-neovim