vim-gutentags VS vim-fugitive

Compare vim-gutentags vs vim-fugitive and see what are their differences.

vim-gutentags

A Vim plugin that manages your tag files (by ludovicchabant)

vim-fugitive

fugitive.vim: A Git wrapper so awesome, it should be illegal (by tpope)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
vim-gutentags vim-fugitive
18 114
2,255 19,291
- -
1.3 8.1
about 1 month ago 26 days ago
Vim Script Vim Script
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.

vim-gutentags

Posts with mentions or reviews of vim-gutentags. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-10-25.
  • Vim + Ctags + Modern JS
    1 project | /r/vim | 14 Apr 2023
    https://github.com/ludovicchabant/vim-gutentags/issues/139 has some background.
  • Rust setup for neovim
    2 projects | /r/rust | 25 Oct 2022
    Hi everyone. I'm looking to have a better setup for Rust in neovim. I do have rust-analyzer installed for useful lsp things but I was hoping to get tags working for it as well. I was using vim-gutentags (https://github.com/ludovicchabant/vim-gutentags) for navigating useful functions and stuff but couldn't quite get it to work for rust. Is there a simple way to do it or do I need rusty-tags and some aucommand to get it to work?
  • Project & File navigation
    20 projects | /r/vim | 4 Oct 2022
    use tags, I like https://github.com/ludovicchabant/vim-gutentags for this. I might use my local .vimrc to tweak the config (exclude compiled source files and other uninteresting things)
  • Whenever I'm looking for plugins these days [OC]
    29 projects | /r/neovim | 7 Jul 2022
  • Big game changers you wish you knew about earlier
    6 projects | /r/vim | 14 Jun 2022
    guttentag: https://github.com/ludovicchabant/vim-gutentags
  • Having trouble with ctags
    3 projects | /r/vim | 5 Jun 2022
    Without more information, it's hard to point you in the right direction. The tags file could be out-of-date, in which case you can try to re-generate it (vim-gutentags for tags auto-generation). You could have 2 function declarations with the same name, in which case you can try :tag to cycle through tags (supports partials, like :tag F which will suggest FOO, FAR, FAB ...etc) or :tag to see a list of possible options (supports partials, like :tag F which will list FOO, FAR, FAB, ...etc) for various matching tags you can jump to (fzf.vim provides a tags fuzzy finder via :Tags). Maybe you're experiencing :h tag-priority?
  • What are your must-have vim/nvim extensions?
    53 projects | /r/vim | 9 May 2022
    ludovicchabant/vim-gutentags - Tags
  • Vim – Minimal Setup Explained
    8 projects | news.ycombinator.com | 24 Feb 2022
    You can then use :cnext and :cprev (or focusing the window and selecting an entry) to navigate between them.

    As others have stated, you can also use ctags (plugins like https://github.com/ludovicchabant/vim-gutentags are useful for refreshing tags in a project), but for some languages you may need to add a tag definition (e.g. for something like rust or zig). For older languages like C you should be fine.

  • How to set up VIM for PHP development
    8 projects | dev.to | 14 Feb 2022
  • Can you add custom functionality for goto definition for lsp to use multiple langauges?
    3 projects | /r/neovim | 30 Jan 2022
    Not sure if it will help in this case, but I also depend on ctags for when the lsp fails (e.g. code it doesn't compile for some reason). Here you let a program create a tags file, e.g. I use https://github.com/universal-ctags/ctags (it seems it can parse json files, though I'm not sure what kind of tags are generated from this and if they will be useful to you) with https://github.com/ludovicchabant/vim-gutentags to update the tags file. The tags file just contains symbol names with locations where they are defined, and vim has builtin functionality to use these tags files :h tag and they (can) work filetype independent. For example if I mention a C type in a markdown document I can just use ctrl-[ to jump to its definition in the C source file. Possibly you can generate tags files yourself from the json files to help with this, the tags file format is not very complicated. Tags also are not very intelligent and depend on unique names for them to work well, there is the :h g_CTRL-] that can help, but for symbols that are very common (e.g. init or something that potentially has like 20+ definitions) it doesn't really work.

vim-fugitive

Posts with mentions or reviews of vim-fugitive. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-16.
  • How to commit part of file in Git
    2 projects | news.ycombinator.com | 16 Feb 2024
    the only reason I do some git stuff in vim and not _always_ in the shell, is because tpope is very thoughtful and fugitive.vim provides nice ways to deal with hunks or hunk partials (visually selecting a range within a hunk, for i.e.)

    https://github.com/tpope/vim-fugitive/blob/master/doc/fugiti...

  • GitUI
    5 projects | news.ycombinator.com | 7 Jan 2024
    I agree, navigating blame history is incredibly useful, if only to save you from asking the wrong person about a particular change.

    Vim's Fugitive[1] can do this and also in Textmate to. So I would hope that most editor git plugins can.

    1. https://github.com/tpope/vim-fugitive

  • What are some plugins that you can't live without?
    16 projects | /r/neovim | 4 Dec 2023
    Git: vim-fugitive and gitsigns.nvim
  • Is it too late to learn emacs as a vim lifer?
    3 projects | /r/emacs | 3 Oct 2023
    You'll want to invest the time in learning Magit, which will change your life once you get the hang of it (and I was a heavy user of Fugitive in Vim previously!), and it's unlikely you'll find a better integration with GDB anywhere else on the planet than with Emacs, though I can't say that empirically. You just need to take the plunge and start learning it, then cut over and take the hit in productivity one day when you're feeling adventurous. You'll ultimately become far more powerful than you've ever been. Especially if you delve into elisp over time. I use Spacemacs, which is bloated and has bugs, but it has so many features that I haven't undertaken the massive endeavor to replace it from scratch yet.
  • Fugitive.vim: A Git wrapper so it should be illegal
    1 project | news.ycombinator.com | 26 Jun 2023
  • webify.nvim - Open the current file in the remote's web interface (github or gitlab) or yank its URL
    4 projects | /r/vim | 26 Jun 2023
    For an option that works on Vim, if you already use tpope's vim-fugitive, there's vim-rhubarb (for GitHub) and fugitive-gitlab.vim (for GitLab).
  • Vim users who work without any plugins, how does your vimrc look like?
    7 projects | /r/vim | 30 May 2023
    I replace vim-fugitive with :! git
  • Switching from Emacs. My experience
    20 projects | /r/neovim | 24 May 2023
    The only thing I truly miss from Emacs is [Magit](https://magit.vc/) since I still consider it the best git wrapper available. It is just too good. Unfortunately [Neogit](https://github.com/TimUntersberger/neogit) is not quite there yet although I hope it makes it at some point. I didn't like [Fugitive]https://github.com/tpope/vim-fugitive), but I ended up finding a good enough workaround by using [Lazygit](https://github.com/jesseduffield/lazygit) through [Toggleterm](https://github.com/akinsho/toggleterm.nvim).
  • I like Tabasco.
    5 projects | /r/linuxmasterrace | 6 May 2023
    I do think VSCode is a great tool and I recommend it frequently to people, but I still want to set the record straight here. Yes, vim is obviously limited in the sense that as a CLI app it doesn't draw it's own PDF or HTML windows, that's fair. But it can remote control your favorite PDF viewer or browser for roughly the same functionality. I'm currently writing my thesis using vimtex and it's quite smooth. And all the other stuff you mention is implemented quite competently by various plugins like vim-fugitive, coc.nvim, vimspector and copilot.vim.
  • [Neovim] Meilleure intégration GIT pour Neovim?
    1 project | /r/enfrancais | 4 May 2023
    Edit: je viens de trouver [https://github.com/tpope/vim-fugitive de Val

What are some alternatives?

When comparing vim-gutentags and vim-fugitive you can also consider the following projects:

tagbar - Vim plugin that displays tags in a window, ordered by scope

neogit - An interactive and powerful Git interface for Neovim, inspired by Magit

ctags - A maintained ctags implementation

vim-gitgutter - A Vim plugin which shows git diff markers in the sign column and stages/previews/undoes hunks and partial hunks.

nvim-cmp - A completion plugin for neovim coded in Lua.

lazygit.nvim - Plugin for calling lazygit from within neovim.

coc.nvim - Nodejs extension host for vim & neovim, load extensions like VSCode and host language servers.

gitsigns.nvim - Git integration for buffers

vista.vim - :cactus: Viewer & Finder for LSP symbols and tags

telescope.nvim - Find, Filter, Preview, Pick. All lua, all the time.

nvim-bqf - Better quickfix window in Neovim, polish old quickfix window.

lazygit - simple terminal UI for git commands