rust.vim VS refactoring.nvim

Compare rust.vim vs refactoring.nvim and see what are their differences.

rust.vim

Vim configuration for Rust. (by rust-lang)

refactoring.nvim

The Refactoring library based off the Refactoring book by Martin Fowler (by ThePrimeagen)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
rust.vim refactoring.nvim
23 37
3,772 2,401
1.3% -
0.0 8.8
9 days ago 13 days ago
Vim Script Lua
Apache License 2.0 MIT License
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.

rust.vim

Posts with mentions or reviews of rust.vim. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-05.
  • How to prevent rust-analyzer (rust lsp) from checking code on each save
    2 projects | /r/neovim | 5 Dec 2023
    I am using rustaceanvim and rust.vim.
  • Issue with syntax highlighting in rust with rust-analyzer
    2 projects | /r/neovim | 18 Apr 2023
    When the file first loads, it uses the syntax defined in the $VIMRUNTIME/syntax/rust.vim file from rust.vim, which is what I want, but after a few seconds (probably once rust-analyzer loads and runs), it changes the highlighting to use different colours (there's probably a better way to describe it, but a video is easier to show). This colour change also happens when I write the file (and rust-analyzer runs again).
  • Can’t run specific test via LSP
    3 projects | /r/neovim | 1 Apr 2023
    I think, VSCode uses extenstion with capabilities around LSP. Try installing this: https://github.com/rust-lang/rust.vim
    3 projects | /r/neovim | 1 Apr 2023
    Or this https://github.com/rust-lang/rust.vim, it has example with running tests
  • Struggling to get basic diagnostic working with LSP
    3 projects | /r/neovim | 5 Dec 2022
    Coworker was getting syntax error without saving because of using https://github.com/rust-lang/rust.vim and not from lsp/rust-analyzer
    3 projects | /r/neovim | 5 Dec 2022
    If you need basic syntax checking on leaving insert mode (without saving file), https://github.com/rust-lang/rust.vim can be used
  • Is it possible to have Rust doc test comments highlighted in Neovim?
    2 projects | /r/neovim | 3 Dec 2022
    Seems like there's a tree-sitter solution, but I do want to note that this works out of the box with rust.vim: https://github.com/rust-lang/rust.vim/issues/63. It might be the built-in Rust support is out of date -- using that repo as a plugin would do the trick.
  • Default mappings override user mappings in Rust ( [[ and ]] mappings )
    2 projects | /r/neovim | 28 Sep 2022
    Most of the customizations in the $VIMRUNTIME's rust ftplugin are guarded behind a flag (g:rust_fold, g:rustfmt_autosave,g:rust_recommended_style, etc.) to control enabling and disabling them, but for some reason the navigation mappings are unconditionally defined, with no flag to turn them off... It might be worth going through the issues in https://github.com/rust-lang/rust.vim to see if that ever came up before.
  • Config For rust dev
    8 projects | /r/neovim | 27 Jul 2022
    Is having rust.vim necessary if I'm using rust-tools already?
  • Need help for setting up neovim.
    6 projects | /r/neovim | 25 Jul 2022
    Primeagen has a series, you could also try spacevim or lunarvim( i prefer lunarvim). If you want to read the docs and setup yourself 1. lsp and code completion mentioned in #5. 2. treesitter 3. lsp handles that, you have to install java's lsp, this improves its look. 4. Make your own remaps, some languages have a plugin for this but i can't find one for java, this is the one for rust. 5. Install cmp and one of the snippet engines.

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
    2 projects | dev.to | 11 Jan 2024
    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
    2 projects | /r/neovim | 13 Jul 2023
    Is there any refactoring plugins for Neovim besides https://github.com/ThePrimeagen/refactoring.nvim?
  • First PR using NeoVim, but need help moving forward
    3 projects | /r/neovim | 30 May 2023
    refactoring.nvim and null-ls.nvim may help
  • In neovim ,how to do refactoring python code?
    5 projects | /r/neovim | 20 Apr 2023
    Besides rename (which is part of the LSP specification, so it's supported out-of-the-box), there is refactoring.nvim
    5 projects | /r/neovim | 20 Apr 2023
    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?
    4 projects | /r/vim | 28 Feb 2023
  • New Plugin: ruby toolkit
    2 projects | /r/neovim | 20 Feb 2023
    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
  • neovim-related: Are there good refactor plugin for elixir?
    2 projects | /r/elixir | 22 Dec 2022
    I saw this refactoring.nvim but it doesn't support elixir
    2 projects | /r/elixir | 22 Dec 2022
    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
  • NeoVim as a full-fledged IDE
    3 projects | /r/neovim | 16 Nov 2022

What are some alternatives?

When comparing rust.vim and refactoring.nvim you can also consider the following projects:

Clippy - A bunch of lints to catch common mistakes and improve your Rust code. Book: https://doc.rust-lang.org/clippy/

nvim-lsp-ts-utils - Utilities to improve the TypeScript development experience for Neovim's built-in LSP client.

coc-rust-analyzer - rust-analyzer extension for coc.nvim

doom-emacs - An Emacs framework for the stubborn martian hacker [Moved to: https://github.com/doomemacs/doomemacs]

YouCompleteMe - A code-completion engine for Vim

react-extract.nvim - Neovim plugin for extracting jsx into React component

Rustlings - :crab: Small exercises to get you used to reading and writing Rust code!

rusty-tags - Create ctags/etags for a cargo project

pyright - Static Type Checker for Python

nvim-treesitter-refactor - Refactor module for nvim-treesitter

vim-cargo - Rust Cargo command bindings

vscodium - binary releases of VS Code without MS branding/telemetry/licensing