the-golden-vim
neg4n/the-golden-vim
the-golden-vim
neg4n/the-golden-vim
A tribute to the era before bloat. Vim, reinterpreted.
Features
- Written entirely in Lua - the language that stays out of your way.
- Uncomplicated. No lazy-loading nonsense or dependency pyramids that break on edit. In modern "Vim frameworks", even the smallest change can trigger an avalanche.
- Built on NeoVim v0.11 and the
mini.nvimecosystem. Because oldschool doesn't mean outdated. - Enhanced with LuaFun - for
.map(),.filter(), and other table operations, familiar to anyone fluent in functional programming or JavaScript. - No dopamine-driven plugins. Only what matters for daily work.
- Uses the classic
murphytheme - already included in Vim and Neovim. Old colors, new context. - Straightforward, top-to-bottom configuration. No maze of directories or 999 files for 999 plugins.
- Relies on proven tools that already do the job (
rg,fzf,bat, and friends). No pointless Lua re-implementations "just because". - Smart, but never intrusive - LSPs, diagnostics, formatters, Git integration.
- Packed with QoL features: enhanced
:Bdeletecommands, synced terminal colors (MiniMisc.sync_termbg), scoped liveripgrepwithfzf,oil.nvim-like keybindings for Mini.files filesystem buffers, and more. - No attempts to imitate a GUI IDE. No file tree, no icons, no floating clutter.
- Focused and reliable - works in any stack, any size. Tested inside large monorepos.
Quality of life improvements
- Helix-style edits: yank once (
yiw), then mutate freely—dw/ciw/xdefault to"_and visualppastes without polluting the yank; explicit registers like"adwstill capture text. Disabled for special buffers (help, prompt, terminal, grug-far) and can be turned off per-buffer withvim.b.blackhole_disable = true. - Reliable MacOS system theme detection (dark, light) with adjusting the current Vim colors basing on built-in themes -
peachpufffor light andmurphyfor dark. Including TextMate ports of these themes forbat(see github.com/neg4n/murphy.tmTheme and github.com/neg4n/peachpuff.tmTheme), made exclusively for The Golden Vim - Easy copy of particular LSP/Linter diagnostics inside
fzf-luadiagnostics window. Very useful for pointing external AI Agents (like OpenAI Codex) to a specific problems.
Customization
The codebase is small enough to understand in one sitting, and flexible enough to rebuild from scratch.
Fork it, strip it down, or change it into something unrecognizable - it’s still yours.
If you wish to use different LSP servers or formatters, search codebase for conform and blink keywords.
Installation
NeoVim
If you're starting with Vim or you're getting back after the years, please install the 0.11 version through bob (a NeoVim version manager). This brilliant utility will save you a lot of time and struggle to get started.
Once you have bob installed on your machine run bob install 0.11 in a terminal of your choice.
Cloning The Golden Vim
Clone the configuration into your NeoVim config directory
- Via
gitgit clone https://github.com/neg4n/the-golden-vim ~/.config/nvim/ && cd ~/.config/nvim/ - Via GitHub CLI (
gh)gh repo clone neg4n/the-golden-vim ~/.config/nvim && cd ~/.config/nvim
Other prerequisities before running
Optional enhancements
The Golden Vim was created with mind of Ghostty terminal emulator and Berkeley Mono typeface by U.S. Graphics Company. It'll work flawlessly in other setups but if you wish to replicate the look from the media resources - use these!
The ports of murphy and peachpuff themes for bat (previews) can be found on the murphy.tmTheme and peachpuff.tmTheme repositories.
Keymaps and bindings
Short intro
- Leader key is
Space. - Normal
<leader>n– open MiniNotify history. - Normal
-– toggle the Oil file explorer in a float. - Normal
gd– jump to LSP definition. - Normal
gra- LSP code action. - Normal
grn- LSP rename. - Normal
<leader>r– format the current buffer asynchronously. - Normal
<leader>ld– fzf-lua diagnostics picker with yank support. - Normal
<leader>f– fzf-lua files. - Normal
<leader>s– fzf-lua document symbols. - Normal
<leader>b– fzf-lua buffers. - Normal
<leader>/– scoped live ripgrep. - Normal
<leader>?– pick directories, then live ripgrep. - Normal
<leader>g– fzf-lua Git diff view. - Normal
<leader>vh– fzf-lua help tags. - Oil buffer
q/<Esc>– close the floating Oil window.
More
For the Git integration, type :Git <any-command> and explore by yourself. Refer to the mini.git docs eventually. The Golden Vim works best if you are used to manage Git via terminal (it also respects your git aliases) and GitHub via GitHub CLI
The MIT License.
More Projects
Explore other projects that might interest you
bitf
A tiny and robust library to manage bitflags / bitsets / optionsets in TypeScript & JavaScript
faviconize
🎆 Library and CLI responsible for generating favicons in all formats and providing easy way to integrate them into your application
good-typescript-library-template
Production ready minimal template for developing and releasing TypeScript libraries, including automated GitHub repository setup. And believe me, it is good.