Make Vim Useful Again with VEX
Source: Dev.to
Hey everyone!
After months of tweaking, testing, and countless evenings spent in the terminal, I’m really excited to share the evolution of my Vim setup into something I’m now calling VEX — the Vim Ecosystem eXtension.
What is VEX?
What started as a personal .vimrc file slowly grew into a sprawling, hard‑to‑manage configuration. I wanted the power of a modern IDE—smart completion, easy navigation, seamless LSP support—without leaving the comfort and speed of Vim, and I wanted it to work instantly on any machine I sat down at.
VEX is a modern, modular, batteries‑included Vim configuration that’s just one git clone away from a full‑powered editing environment. It is not a new editor or a plugin; it’s a carefully curated, pre‑configured environment that layers on top of your existing Vim (version 8.0+). Think of it as a distribution for Vim, focused on developer experience and consistency.
- Repository: https://github.com/m-mdy-m/.vimrc
- License: Open‑source (MIT)
Core Philosophy
- Sensible defaults with zero friction.
- No need to spend hours configuring LSP servers, fuzzy finders, or Git integration.
- Works out of the box on Linux, macOS, and WSL.
“You shouldn’t spend hours configuring LSP servers, setting up fuzzy finders, or getting Git integration to work. VEX handles that, providing a cohesive experience across platforms.”
Installation
Step‑by‑step (Linux example)
-
Read the installation guide:
https://github.com/m-mdy-m/.vimrc/blob/main/docs/installation/linux.md -
One‑command install
git clone https://github.com/m-mdy-m/.vimrc.git vex cd vex make install -
Launch Vim:
vimThe welcome screen greets you, and you’re ready to code.
Modular Options
| Flag | Description |
|---|---|
--minimal | Install only the essential core configuration. |
--skip-lsp | Skip automatic installation of LSP servers. |
--skip-plugins | Install only the VEX configuration structure. |
These flags can be combined as needed, e.g.:
make install --minimal --skip-lsp
Management Layer
VEX adds a thin management layer on top of Vim:
vex update– Pull the latest changes from the repo.vex doctor– Diagnose common configuration issues.vex plugin list– Show installed plugins.
All commands are documented here:
https://github.com/m-mdy-m/.vimrc/blob/main/docs/reference/commands.md
Modern IDE Features (still Vim)
| Feature | Plugin | Purpose |
|---|---|---|
| Language intelligence | vim-lsp | Go‑to‑definition, hover, diagnostics |
| Fuzzy searching | fzf | Fast file/line search |
| Inline Git diffs | vim-gitgutter | Show added/changed/removed lines |
| Status line | vim-airline | Clean, informative status bar |
| Text objects | vim-surround | Easy surrounding edits |
| Motion | vim-easymotion | Jump to any location quickly |
Key mappings are designed to feel intuitive (e.g., Ctrl+N toggles the file explorer) while preserving core Vim muscle memory.
All default key mappings are documented in one place:
https://github.com/m-mdy-m/.vimrc/blob/main/docs/configuration/keymaps.md
Plugins & Configuration
-
Plugin list (authoritative):
https://github.com/m-mdy-m/.vimrc/blob/main/src/plugins/install.vim -
Plugin behavior & management:
https://github.com/m-mdy-m/.vimrc/blob/main/docs/configuration/plugins.md
VEX does not reinvent Vim; it curates and integrates trusted plugins (managed by vim-plug) so they work together without conflicts. Key mappings don’t collide, features are discoverable, and defaults are predictable.
Documentation
All docs live in the docs/ directory and are organized as follows:
- Configuration – keymaps, plugins, settings
- Reference commands –
vexCLI commands - Installation guides – platform‑specific notes
Repository tree:
https://github.com/m-mdy-m/.vimrc/tree/main/docs
Contributing & Feedback
VEX is stable, fast, and works for my daily workflow, but it’s far from “finished.” I’m looking for real‑world feedback to shape its future.
- Star the repo: https://github.com/m-mdy-m/.vimrc
- Explore the docs: https://github.com/m-mdy-m/.vimrc/tree/main/docs
- Browse plugins & config: Transparent and fully documented in the repo.
- Contribute: Issues, PRs, or even small suggestions are welcome.
Discussion Prompts
- Does a batteries‑included Vim setup like this appeal to you, or do you prefer building everything piece by piece?
- Which parts of Vim configuration feel empowering, and which feel like friction or wasted time?
- If you tried VEX, what would you change first—keymaps, plugins, defaults, or the overall structure?
Your input will help ensure VEX evolves in a way that benefits the broader Vim community.
VEX isn’t trying to reinvent Vim; it simply packages the best of the ecosystem into a cohesive, ready‑to‑use experience.
Goal to be everything for everyone.
It’s trying to be a solid, opinionated Vim environment that respects your time.
If that resonates with you, let’s talk—what’s your take?