Back to list
gwenwindflower

lazyvim-config

by gwenwindflower

Beauty, poise, and grace for your terminal.

7🍴 0📅 Jan 20, 2026

SKILL.md


name: lazyvim-config description: Configure Neovim with LazyVim framework. Use for plugin setup, keymaps, options, autocmds in editor/nvim/. Triggers: lazyvim, neovim config, nvim setup, plugin config.

LazyVim Configuration

Configure and customize Neovim using the LazyVim framework in this repository's editor/nvim/ directory.

When to Use This Skill

  • Adding or configuring Neovim plugins
  • Modifying keymaps, options, or autocmds
  • Troubleshooting LazyVim configuration issues
  • Questions about LazyVim defaults or plugin specs
  • Setting up language-specific features (dbt, SQL, Python, Markdown)

Repository Context

  • Config location: editor/nvim/
  • Theme: Catppuccin Frappe (consistent with terminal, bat, etc.)
  • Focus areas: Data work (dbt, SQL, Python) and Markdown authoring
  • Snippets: editor/nvim/snippets/ (friendly-snippets format)

Configuration Files

FilePurpose
lua/plugins/*.luaPlugin specifications (auto-loaded)
lua/config/keymaps.luaCustom keybindings
lua/config/options.luaVim options
lua/config/autocmds.luaAutocommands
lazy-lock.jsonPlugin version lockfile
lazyvim.jsonLazyVim extras configuration

Instructions

Before Making Changes

  1. Check LazyVim defaults at https://www.lazyvim.org/ to avoid redundant configuration
  2. Read the existing config file before editing
  3. Verify the plugin is not already configured by LazyVim extras

Plugin Configuration

Use LazyVim's plugin spec format, not raw lazy.nvim:

-- lua/plugins/example.lua
return {
  -- Extend existing plugin
  {
    "plugin/name",
    opts = {
      -- Options merge with defaults
    },
  },

  -- Override existing plugin
  {
    "plugin/name",
    opts = function(_, opts)
      -- Modify opts table directly
      opts.some_option = "value"
    end,
  },

  -- Add new plugin
  {
    "author/new-plugin",
    event = "VeryLazy",  -- Lazy-load on event
    dependencies = { "nvim-lua/plenary.nvim" },
    opts = {},
    keys = {
      { "<leader>xx", "<cmd>PluginCommand<cr>", desc = "Description" },
    },
  },

  -- Disable a plugin
  { "plugin/to-disable", enabled = false },
}

Keymap Configuration

-- lua/config/keymaps.lua
local map = vim.keymap.set

-- Format: map(mode, lhs, rhs, opts)
map("n", "<leader>xx", "<cmd>SomeCommand<cr>", { desc = "Description" })
map("v", "<leader>yy", function() ... end, { desc = "Description" })

-- Delete a LazyVim keymap
vim.keymap.del("n", "<leader>existing")

Options Configuration

-- lua/config/options.lua
local opt = vim.opt

opt.relativenumber = false
opt.scrolloff = 8
opt.wrap = true

Autocmds Configuration

-- lua/config/autocmds.lua
vim.api.nvim_create_autocmd("FileType", {
  pattern = { "sql", "python" },
  callback = function()
    vim.opt_local.tabstop = 4
  end,
})

Common Tasks

Add Language Support

  1. Check if LazyVim has an "extra" for the language (lazyvim.json)
  2. If yes, enable it rather than manual config
  3. If no, create lua/plugins/lang-<name>.lua

Add Snippets

  1. Create JSON file in editor/nvim/snippets/<filetype>/<name>.json
  2. Follow friendly-snippets format
  3. Snippets auto-load for matching filetypes

Debug Configuration Issues

  1. Run :checkhealth in Neovim
  2. Check :Lazy for plugin errors
  3. Use :verbose map <key> to trace keybindings
  4. Check :messages for startup errors

Guidelines

  • Prefer LazyVim extras over manual plugin config when available
  • Use opts table merging instead of full override when possible
  • Include desc for all keymaps (appears in which-key)
  • Lazy-load plugins with event, ft, cmd, or keys
  • Test changes by restarting Neovim or running :Lazy sync
  • Check for macOS keybinding conflicts (Mission Control, Spotlight)
  • Keep Catppuccin Frappe theme consistent across colorscheme configs

Score

Total Score

55/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

1ヶ月以内に更新

+10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

+5

Reviews

💬

Reviews coming soon