I tried these, and they seem to mainly be opening Claude Code in a pane in Vim, along with commands to open the pane. It’s missing the features added to the Emacs version like open file awareness, access to text selection, and integrated diff for changes.
It would be really interesting to see a version which exposes Vim as an MCP. I would love to see Claude Code work on the active file, reading from open buffers, typing Vim motions, and taking advantage of Vim features like find/replace and macros. It would be closer to the real pair programming experience, whereas the read and write experience is slow and disjointed from editing.
Hello, I'm the maintainer of the coder/claudecode.nvim plugin.
This plugin does indeed support that functionality. It implements an MCP server using pure Lua and Neovim primitives. It not only notifies Claude Code about the currently open file and selected lines in a file, but also opens diff views whenever Claude Code attempts to make a file change.
Avante - https://github.com/yetone/avante.nvim. Admittedly I haven't had time to keep up with it's changes and as a result have gone back to VS Code + Copilot, but it's very well integrated last I did use it.
I gave Avante a fair try for about a week and my opinion is that it's not really ready for big time yet. Lots of bugs, slow, and cumbersome. Now I just use Claude Code in a separate tmux pane and its great.
I think that’s a decent approach, but doesn’t the performance of a Neovim terminal bother you? It simply does not feel as good as a native terminal pane. It’s not as bad as VSCode’s terminal pane, but it still leaves something to be desired.
I use Neovim + kitty (https://sw.kovidgoyal.net/kitty/conf/) and the performance is phenomenal. Everything is instant. kitty also has a built-in robust layout system so I ended up ditching tmux entirely for it.
Out of curiosity, do you have a good flow for having a file buffer automatically update in response to claude's changes? I'm perpetually needing to remember to `:e!<CR>` to read the updated file.
To offer an anecdote: I've been used to doing `:e!` with vim. I recently finally had a reason to move to nvim... and it's been auto-updating my buffers when I do stuff in `aider`. Very much a, "oh, ok that's nice!" and I haven't dug further.
I’m actually a neovim user already! This makes me worry that my config has something to prevent this behavior (but I hope not, I hate messing with my config)
Can you prompt it? A bit manual, but hey. I wonder if you can script visual selection in Neovim to output full file path plus line number range, for direct copy paste.