Tip
🇷🇺 Русская версия: FAQ.ru.md
An enhancement layer for LazyVim: 50 optional extras and 39 plugin overrides. LazyVim stays the foundation, lazyvimx adds interface and workflow polish — and only what you've enabled.
lazyvimx extends LazyVim, it doesn't replace it:
- LazyVim — the foundation: a well-thought-out base Neovim configuration
- lazyvimx — the layer on top: UI polish, navigation, git workflow, the Russian layout
Everything LazyVim can do keeps working as before.
No. lazyvimx is built on top of LazyVim and requires it — it's not a standalone configuration.
The project follows semver and is updated regularly. Every extra is optional — what's not enabled has no effect.
Like regular plugins:
:Lazy updateThe change history is in the Changelog.
- Neovim >= 0.10.0
- Git (for lazy.nvim)
LazyVim installs automatically.
See the Quick Start in the README: create an init.lua with the
lazyvimx.boot import, start Neovim — the rest happens on its own.
Yes, lazyvimx is compatible with existing LazyVim configurations:
- Make a backup:
cp -r ~/.config/nvim ~/.config/nvim.backup - Replace the LazyVim spec in
init.luawith thelazyvimx.bootimport - Restart Neovim
Your plugins in lua/plugins/ keep working.
Same place as in LazyVim — ~/.config/nvim/lua/plugins/:
-- ~/.config/nvim/lua/plugins/my-plugin.lua
return {
"author/plugin-name",
opts = {},
}Via opts in the plugin spec or setup():
require("lazyvimx").setup({
colorscheme = "catppuccin",
bufferline_groups = {
["React"] = "%.tsx$",
},
})All the options are in Configuration.
require("lazyvimx").setup({ colorscheme = "tokyonight" })Or directly: :colorscheme tokyonight-storm.
lazyvimx detects the system's light/dark mode and picks the matching variant from the
theme's "household" (colorscheme_households). Switching on the fly needs an external
watcher that sends the Neovim process a signal — details in
Configuration.
Yes — instead of core.overrides, import categories selectively:
{ import = "lazyvimx.overrides.lazyvim" },
{ import = "lazyvimx.overrides.snacks" },
-- skipping bufferline
{ import = "lazyvimx.overrides.other" },An optional module with a ready-made setup for one feature. For example:
ui.better-diagnostic— single-line diagnostics at the cursormotions.langmapper— the Russian layoutgit.gitlab— GitLab MR review
All 50 are in Extras.
Via the UI (recommended): :LazyExtras, the lazyvimx section with the icon, x to
enable, restart.
Via the config:
{ import = "lazyvimx.extras.ui.better-diagnostic" },Everything at once:
{ import = "lazyvimx.extras.core.all" },No. Reasonable setups:
- minimal — just
core.overrides - full —
core.all - your own — the overrides plus individual extras to taste
core.overrides— polish for every pluginui.better-diagnostic— readable diagnosticsui.better-float— one window stylemotions.langmapper— if you type on a Russian layoutgit.conflicts— if conflicts happen
Yes — it's a regular file with a lazy.nvim spec, see Architecture and Contributing.
No. Everything loads lazily, and disabled extras don't exist for lazy.nvim at all. The startup impact is minimal and grows only with the number of enabled extras.
- Enable only what you need —
core.overridesinstead ofcore.all - Profile:
:Lazy profileandnvim --startuptime startup.log perf.stop-inactive-lspandbuf.delete-inactiveclean up memory in long sessions
Yes, the VSCode mode turns on automatically (vim.g.vscode): mode indicator sync, adjusted
keymaps, native rename. A ready-made example is
examples/vscode-user.
Yes: after :Lazy update the lock files are added to chezmoi automatically, as long as the
binary is installed. Details — in Configuration.
It does. Notes:
- system theme detection exists on macOS and Linux (gsettings); not on Windows
- the trash in neo-tree goes through the
trashutility (present — used, absent — a regular delete)
Yes — add your household to colorscheme_households
(format). But lazyvimx custom highlights only exist for
Catppuccin, Tokyo Night, and Nord.