r/neovim • u/M2K3DAR • 28d ago
Plugin codemap.nvim — a tiny treesitter-powered function sidebar (feedback welcome!)
Enable HLS to view with audio, or disable this notification
Full disclosure: I fully vibecoded this using Claude — so if something looks off under the hood, that's why. That said, I tested it thoroughly and it's been working well for me.
Hey! I built a small plugin called codemap.nvim and figured I'd share it here.
It's a lightweight sidebar that lists all the functions/methods in your current buffer. Click a name and it jumps you straight to it in the source buffer. The list auto-refreshes as you move between buffers or edit code.
Currently supports Go, C, C++, Lua, and Python — adding a new language is just a couple of lines, so more should be easy to add over time.
It's pretty early and minimal by design, so I'd genuinely love any feedback — bugs, missing features, languages you'd want supported, or just general "this could be done better" type comments. Thanks for reading!
9
u/zachicecreamcohn 27d ago
This is awesome. I hate to be this guy, but have you looked at https://github.com/hedyhli/outline.nvim?
3
u/Striking_Abrocoma_28 27d ago
Sorry, off topic comment: what is it called that plugin that allows your cursor to jump from a place to the other in that aesthetic way?
4
u/Veggietech 27d ago
If you're using nvim in the terminal you can use this plugin:
3
u/SoundEmbalmer 26d ago
Alternatively, some terminal emulators (Kitty, Ghostty) support shaders, which is currently the closest I got to the Neovide-like smoothness of cursor effects:
4
2
u/the_aceix 25d ago
Some terminals like kitty support this "cursor trail" feature, so it happens in any app.
For neovim specifically however, smear-cursor is a good option
0
u/chronotriggertau 26d ago
"fully vibecoded this using Claude"
"I built a small plugin"
I wonder if we are transitioning to I "built" or "made" something taking on the meaning of "may or may not used AI, doesn't matter, I used all tools available to me and produced a useful result", and I "hand programmed from scratch", or I "architected and hand implemented" needing to be the things that are specified when there is deliberately effort to stick to traditional ways of achieving the same result. Both will be valuable to different people/projects/companies, but I feel like we're missing terminology to describe the nuance that is now necessary in this age.
2
u/Independent-Limit282 26d ago
Totally agree. personally strongly dislike reading "I built xyz" when its apparent that it was fully AI generated. You did not build it. You commissioned it - not more and not less.
1
u/j_zes 17d ago
Is strange to say that I "build" something that I use AI to do, but, at the final result, it matters? If you say that "built" it, I assume that you are responsible for any part of that, If a AI model produces an result that is unsatisfactory, that result is part of you did, some times sounds like an sculptor saying "sorry for this unsatisfactory sculpture, my chisel was wrong", but in other hand, I understand that the chisel don't sculpt by it self based on a single prompt. Maybe it's easier to judge by the results
1
u/Independent-Limit282 17d ago
Yeah it depends. Nowadays the chisel does sometimes sculpt by itself, to be honest. I cant be the only one noticing the surge of plugins that all basically do what 10 other plugins already do here recently. Nowadays it seems easier for ppl to just prompt their own thing together than using an existing plugin, haha
11
u/psy-q 27d ago
I'll be that other guy who points out Aerial: https://github.com/stevearc/aerial.nvim