vim-go
vim-fugitive
Our great sponsors
vim-go | vim-fugitive | |
---|---|---|
25 | 114 | |
15,811 | 19,053 | |
- | - | |
8.3 | 8.2 | |
11 days ago | 8 days ago | |
Vim Script | Vim Script | |
GNU General Public License v3.0 or later | - |
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-go
-
nvim when I open an empty file from go
There are a handful of really good go plugins that take care of this for you, such as https://github.com/ray-x/go.nvim or https://github.com/fatih/vim-go
-
What's the most commonly used IDE for golang development ?
With vim-go and snippets, neovim has almost the same functionality as GoLand
- Is there any way to autocomplete language functions? For example, show things like fmt.Printf or fmt.Println when writing fmt.Print and pressing the autocomplete key.
-
Which editor do you use for your Go coding?
Neovim with its lsp integration. Yes, my configuration breaks whenever neovim is upgraded (it is < v1 after all). But usually I wait a little while, and then update plugins and I’m good to ‘go’. One very very good plug-in is https://github.com/fatih/vim-go. The wiki page has a suggested vimrc, which works very well to integrate things like identifier highlighting, and references.
with this wonderful plugin: https://github.com/fatih/vim-go
- What's your Golang IDE?
-
Anyone write Go full time using vim?
At first Ihad struggled with some common "IDE" tasks. But then I discovered vim-go and realized that it could do pretty much everything that I need and even more.
-
Share your must-know Go development tips
I use vim as an editor, and I think that vim-go (https://github.com/fatih/vim-go) is a huge help, if you use the "gd" shortcut to take you to where a variable, type or function is defined, and the ctrl-T shortcut to take you back. Use goimports (https://pkg.go.dev/golang.org/x/tools/cmd/goimports) as the vim-go code formatter. This will keep imports up-to-date. There are some other vim-go features that may be helpful. You can have it highlight syntax errors, for example. Not every feature is helpful to every programmer, however.
-
vim-rust go-to-definition doesn't work with standard library features
Maybe there's a reason why this isn't possible, but if I compare this work-flow with something like https://github.com/fatih/vim-go I can use go-to-definition for everything (whether it be a third-party package or a standard library feature such as fmt.Printf).
vim-fugitive
-
How to commit part of file in Git
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
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.
-
What are some plugins that you can't live without?
Git: vim-fugitive and gitsigns.nvim
-
Is it too late to learn emacs as a vim lifer?
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.
-
webify.nvim - Open the current file in the remote's web interface (github or gitlab) or yank its URL
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?
I replace vim-fugitive with :! git
-
Switching from Emacs. My experience
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.
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.
-
How Can I Configure Vim Plugins on Neovim?
But how do I do that for a vim package like vim fugitive
-
Github Permalink direct from Xcode?
I'm using the vim-fugitive NeoVim plugin to get GitHub permalinks. Just select a portion of text, then use the command :GBrowse.
What are some alternatives?
neogit - An interactive and powerful Git interface for Neovim, inspired by Magit
vim-gitgutter - A Vim plugin which shows git diff markers in the sign column and stages/previews/undoes hunks and partial hunks.
lazygit.nvim - Plugin for calling lazygit from within neovim.
gitsigns.nvim - Git integration for buffers
coc-go - Go language server extension using gopls for coc.nvim.
telescope.nvim - Find, Filter, Preview, Pick. All lua, all the time.
coc.nvim - Nodejs extension host for vim & neovim, load extensions like VSCode and host language servers.
go.nvim - A feature-rich Go development plugin, leveraging gopls, treesitter AST, Dap, and various Go tools to enhance the dev experience.
lazygit - simple terminal UI for git commands
magit - It's Magit! A Git Porcelain inside Emacs.
vim-signify - :heavy_plus_sign: Show a diff using Vim its sign column.
delta - A syntax-highlighting pager for git, diff, and grep output