neovim

Configuration Locations

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "neovim" with this command: npx skills add jruz/dotfiles/jruz-dotfiles-neovim

Neovim Skill

Configuration Locations

  • Main config: home/.config/nvim/init.lua

  • Plugins: home/.config/nvim/lua/plugins.lua

  • Config modules: home/.config/nvim/lua/config/

  • keymaps.lua

  • Key mappings

  • lsp.lua

  • LSP configuration

  • completion.lua

  • Completion settings

  • which-key.lua

  • Which-key mappings

  • treesitter.lua

  • Treesitter config

  • telescope.lua

  • Telescope config

  • lualine.lua

  • Statusline config

  • oil.lua

  • Oil file manager config

  • Always edit files in ~/dev/dotfiles/ , not symlinked files in ~/.config/

File Structure

home/.config/nvim/ ├── init.lua # Base config, options, rustaceanvim settings ├── lua/ │ ├── plugins.lua # Lazy.nvim plugin definitions with opts │ └── config/ │ ├── init.lua # Loads all config modules │ ├── keymaps.lua │ ├── lsp.lua │ └── ... ├── after/ # Filetype-specific settings ├── selene.toml # Lua linter config └── stylua.toml # Lua formatter config

Plugin Configuration Pattern

Plugins use lazy.nvim with inline opts or config functions:

{ "plugin/name", opts = { setting = value, }, }

For plugins requiring setup logic:

{ "plugin/name", config = function(_, opts) require("plugin").setup(opts) end, }

VHS Testing

CRITICAL: NEVER run nvim commands that affect the user's active session. VHS creates its own isolated terminal.

CRITICAL: ALWAYS use the tape in this skill folder. NEVER create ad-hoc tape files with different output names.

Use VHS to verify visual changes:

  • Run the tape: vhs .claude/skills/neovim/neovim.tape

  • Output screenshot goes to tmp/neovim.png

  • Read the screenshot to verify before telling user the fix is complete

The tape opens neovim in a clean environment, waits for it to load, and captures a screenshot.

Color Scheme

Uses Catppuccin Mocha theme. Set in init.lua:

vim.cmd.colorscheme("catppuccin-mocha")

Key Mappings

Leader key is Space. Mappings defined in:

  • lua/config/keymaps.lua

  • General keymaps

  • lua/config/which-key.lua

  • Which-key groups and mappings

  • lua/plugins.lua

  • Plugin-specific mappings in plugin specs

LSP Setup

LSP configured via:

  • Mason for LSP server installation

  • mason-lspconfig for automatic setup

  • Individual server configs in lua/config/lsp.lua

  • Rustaceanvim configured separately in init.lua (must load before plugins)

Verification Checklist

Before declaring a config change complete:

  • Confirm you edited files in ~/dev/dotfiles/home/.config/nvim/

  • Run VHS tape to capture screenshot

  • Verify neovim starts without errors

  • Test the specific feature you changed

  • Check no Lua errors in :messages

Common Issues

  • Plugin errors: Check lazy.nvim lockfile at ~/.local/share/nvim/lazy-lock.json

  • LSP not starting: Check :LspInfo and :Mason

  • Treesitter errors: Run :TSUpdate

  • Config reload: Use <leader>R or :source % on init.lua

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

dotnet-10-csharp-14

No summary provided by upstream source.

Repository SourceNeeds Review
General

flutter-riverpod-expert

No summary provided by upstream source.

Repository SourceNeeds Review
General

modern-css

No summary provided by upstream source.

Repository SourceNeeds Review
General

web-animation-design

No summary provided by upstream source.

Repository SourceNeeds Review