thing
This commit is contained in:
parent
f6a12c9a9f
commit
41981bc6d5
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/autocmds.lua
|
||||
Module: plugins.kickstart.autocmds
|
||||
Path: lua/config/autocmds.lua
|
||||
Module: config.autocmds
|
||||
|
||||
Purpose
|
||||
Small, global autocommand hooks: yank highlight feedback and safer defaults
|
||||
|
|
@ -15,12 +15,12 @@
|
|||
|
||||
vim.api.nvim_create_autocmd('TextYankPost', {
|
||||
desc = 'Highlight when yanking (copying) text',
|
||||
group = vim.api.nvim_create_augroup('kickstart-highlight-yank', { clear = true }),
|
||||
group = vim.api.nvim_create_augroup('config-highlight-yank', { clear = true }),
|
||||
callback = function() vim.hl.on_yank() end,
|
||||
})
|
||||
|
||||
vim.api.nvim_create_autocmd('FileType', {
|
||||
group = vim.api.nvim_create_augroup('kickstart-markdown-safe-read', { clear = true }),
|
||||
group = vim.api.nvim_create_augroup('config-markdown-safe-read', { clear = true }),
|
||||
pattern = 'markdown',
|
||||
callback = function()
|
||||
vim.opt_local.modeline = false
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/diagnostics.lua
|
||||
Module: plugins.kickstart.diagnostics
|
||||
Path: lua/config/diagnostics.lua
|
||||
Module: config.diagnostics
|
||||
|
||||
Purpose
|
||||
One global `vim.diagnostic.config` for how LSP diagnostics render: signs,
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/health.lua
|
||||
Module: plugins.kickstart.health
|
||||
Path: lua/config/health.lua
|
||||
Module: config.health
|
||||
|
||||
Purpose
|
||||
Optional `:checkhealth` provider: Neovim version gate, common CLI tools
|
||||
|
|
@ -42,7 +42,7 @@ end
|
|||
|
||||
return {
|
||||
check = function()
|
||||
vim.health.start 'kickstart.nvim'
|
||||
vim.health.start 'nvim configuration'
|
||||
|
||||
vim.health.info [[NOTE: Not every warning is a 'must-fix' in `:checkhealth`
|
||||
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/init.lua
|
||||
Module: plugins.kickstart
|
||||
Path: lua/config/init.lua
|
||||
Module: config
|
||||
|
||||
Purpose
|
||||
Orchestrates core editor setup: globals, options, keymaps, autocommands,
|
||||
|
|
@ -20,8 +20,8 @@ vim.g.maplocalleader = ' '
|
|||
|
||||
vim.g.have_nerd_font = true
|
||||
|
||||
require 'plugins.kickstart.options'
|
||||
require 'plugins.kickstart.keymaps'
|
||||
require 'plugins.kickstart.autocmds'
|
||||
require 'plugins.kickstart.diagnostics'
|
||||
require 'plugins.kickstart.lazy'
|
||||
require 'config.options'
|
||||
require 'config.keymaps'
|
||||
require 'config.autocmds'
|
||||
require 'config.diagnostics'
|
||||
require 'config.lazy'
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/keymaps.lua
|
||||
Module: plugins.kickstart.keymaps
|
||||
Path: lua/config/keymaps.lua
|
||||
Module: config.keymaps
|
||||
|
||||
Purpose
|
||||
Non-plugin (or minimally coupled) normal-mode maps: search, diagnostics
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/lazy.lua
|
||||
Module: plugins.kickstart.lazy
|
||||
Path: lua/config/lazy.lua
|
||||
Module: config.lazy
|
||||
|
||||
Purpose
|
||||
Bootstraps folke/lazy.nvim if missing, prepends it to runtimepath, and calls
|
||||
|
|
@ -24,7 +24,7 @@ end
|
|||
local rtp = vim.opt.rtp
|
||||
rtp:prepend(lazypath)
|
||||
|
||||
require('lazy').setup(require 'plugins.kickstart.plugins.spec', {
|
||||
require('lazy').setup(require 'config.plugins.spec', {
|
||||
ui = {
|
||||
icons = vim.g.have_nerd_font and {} or {
|
||||
cmd = '⌘',
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/options.lua
|
||||
Module: plugins.kickstart.options
|
||||
Path: lua/config/options.lua
|
||||
Module: config.options
|
||||
|
||||
Purpose
|
||||
Sets buffer-agnostic Neovim options (`vim.o` / `vim.opt`): editing feel,
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/autopairs.lua
|
||||
Module: plugins.kickstart.plugins.autopairs
|
||||
Path: lua/config/plugins/autopairs.lua
|
||||
Module: config.plugins.autopairs
|
||||
|
||||
Purpose
|
||||
Lazy spec for nvim-autopairs: inserts/closes paired brackets and quotes in
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/blink.lua
|
||||
Module: plugins.kickstart.plugins.blink
|
||||
Path: lua/config/plugins/blink.lua
|
||||
Module: config.plugins.blink
|
||||
|
||||
Purpose
|
||||
Lazy spec for saghen/blink.cmp: completion menu, LSP source, snippets via
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/conform.lua
|
||||
Module: plugins.kickstart.plugins.conform
|
||||
Path: lua/config/plugins/conform.lua
|
||||
Module: config.plugins.conform
|
||||
|
||||
Purpose
|
||||
Lazy spec for conform.nvim: formatter orchestration (`<leader>f`), per-FT
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/debug.lua
|
||||
Module: plugins.kickstart.plugins.debug
|
||||
Path: lua/config/plugins/debug.lua
|
||||
Module: config.plugins.debug
|
||||
|
||||
Purpose
|
||||
Lazy spec for nvim-dap + nvim-dap-ui + mason-nvim-dap + nvim-dap-go: debug
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/gitsigns.lua
|
||||
Module: plugins.kickstart.plugins.gitsigns
|
||||
Path: lua/config/plugins/gitsigns.lua
|
||||
Module: config.plugins.gitsigns
|
||||
|
||||
Purpose
|
||||
Lazy spec for lewis6991/gitsigns.nvim: gutter hunks, stage/reset, blame,
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/guess_indent.lua
|
||||
Module: plugins.kickstart.plugins.guess_indent
|
||||
Path: lua/config/plugins/guess_indent.lua
|
||||
Module: config.plugins.guess_indent
|
||||
|
||||
Purpose
|
||||
Lazy spec for guess-indent.nvim: detects indentation style per buffer so new
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/indent_line.lua
|
||||
Module: plugins.kickstart.plugins.indent_line
|
||||
Path: lua/config/plugins/indent_line.lua
|
||||
Module: config.plugins.indent_line
|
||||
|
||||
Purpose
|
||||
Lazy spec for indent-blankline.nvim (`ibl`): optional vertical guides aligned
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/lint.lua
|
||||
Module: plugins.kickstart.plugins.lint
|
||||
Path: lua/config/plugins/lint.lua
|
||||
Module: config.plugins.lint
|
||||
|
||||
Purpose
|
||||
Lazy spec for nvim-lint: asynchronous linters per filetype (here Markdown
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/lsp.lua
|
||||
Module: plugins.kickstart.plugins.lsp
|
||||
Path: lua/config/plugins/lsp.lua
|
||||
Module: config.plugins.lsp
|
||||
|
||||
Purpose
|
||||
Lazy spec for nvim-lspconfig + Mason + blink.cmp integration: LspAttach
|
||||
|
|
@ -44,7 +44,7 @@ return {
|
|||
-- LspAttach: buffer-local LSP maps and optional semantic highlight / inlay hints.
|
||||
-- See :help LspAttach, :help lsp-vs-treesitter
|
||||
vim.api.nvim_create_autocmd('LspAttach', {
|
||||
group = vim.api.nvim_create_augroup('kickstart-lsp-attach', { clear = true }),
|
||||
group = vim.api.nvim_create_augroup('config-lsp-attach', { clear = true }),
|
||||
callback = function(event)
|
||||
-- NOTE: Remember that Lua is a real programming language, and as such it is possible
|
||||
-- to define small helper and utility functions so you don't have to repeat yourself.
|
||||
|
|
@ -72,7 +72,7 @@ return {
|
|||
-- before VimEnter, when lazy.nvim has not loaded telescope.nvim yet.
|
||||
--
|
||||
-- Nvim 0.11+ sets *global* defaults grr/gri/grt/gO → vim.lsp.buf.* (quickfix / loclist).
|
||||
-- Buffer-local maps override. Match kickstart.nvim: grr gri grd gO gW grt (see telescope
|
||||
-- Buffer-local maps override defaults; grr/gri/grd/gO/gW/grt use Telescope pickers.
|
||||
-- LspAttach in upstream). `grd` is not a core default — it was only in your fork/telescope.
|
||||
map('grr', function() require('telescope.builtin').lsp_references() end, '[R]eferences')
|
||||
map('gri', function() require('telescope.builtin').lsp_implementations() end, '[I]mplementation')
|
||||
|
|
@ -118,7 +118,7 @@ return {
|
|||
--
|
||||
-- When you move your cursor, the highlights will be cleared (the second autocommand).
|
||||
if client and client_supports_method(client, vim.lsp.protocol.Methods.textDocument_documentHighlight, event.buf) then
|
||||
local highlight_augroup = vim.api.nvim_create_augroup('kickstart-lsp-highlight', { clear = false })
|
||||
local highlight_augroup = vim.api.nvim_create_augroup('config-lsp-highlight', { clear = false })
|
||||
vim.api.nvim_create_autocmd({ 'CursorHold', 'CursorHoldI' }, {
|
||||
buffer = event.buf,
|
||||
group = highlight_augroup,
|
||||
|
|
@ -132,10 +132,10 @@ return {
|
|||
})
|
||||
|
||||
vim.api.nvim_create_autocmd('LspDetach', {
|
||||
group = vim.api.nvim_create_augroup('kickstart-lsp-detach', { clear = true }),
|
||||
group = vim.api.nvim_create_augroup('config-lsp-detach', { clear = true }),
|
||||
callback = function(event2)
|
||||
vim.lsp.buf.clear_references()
|
||||
vim.api.nvim_clear_autocmds { group = 'kickstart-lsp-highlight', buffer = event2.buf }
|
||||
vim.api.nvim_clear_autocmds { group = 'config-lsp-highlight', buffer = event2.buf }
|
||||
end,
|
||||
})
|
||||
end
|
||||
|
|
@ -145,7 +145,7 @@ return {
|
|||
--
|
||||
-- This may be unwanted, since they displace some of your code
|
||||
if client and client_supports_method(client, vim.lsp.protocol.Methods.textDocument_inlayHint, event.buf) then
|
||||
-- `<leader>th` is used in keymaps.lua for terminal horizontal split.
|
||||
-- `<leader>th` is used in `config.keymaps` for terminal horizontal split.
|
||||
map('<leader>ti', function() vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled { bufnr = event.buf }) end, '[T]oggle [I]nlay hints')
|
||||
end
|
||||
end,
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/mini.lua
|
||||
Module: plugins.kickstart.plugins.mini
|
||||
Path: lua/config/plugins/mini.lua
|
||||
Module: config.plugins.mini
|
||||
|
||||
Purpose
|
||||
Lazy spec for nvim-mini/mini.nvim: loads `mini.ai`, `mini.surround`, and
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/mini_icons.lua
|
||||
Module: plugins.kickstart.plugins.mini_icons
|
||||
Path: lua/config/plugins/mini_icons.lua
|
||||
Module: config.plugins.mini_icons
|
||||
|
||||
Purpose
|
||||
Lazy spec for mini.icons: consistent glyphs/highlights for special filenames
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/neo-tree.lua
|
||||
Module: plugins.kickstart.plugins.neo-tree
|
||||
Path: lua/config/plugins/neo-tree.lua
|
||||
Module: config.plugins.neo-tree
|
||||
|
||||
Purpose
|
||||
Lazy spec for nvim-neo-tree/neo-tree.nvim: filesystem sidebar, reveal/toggle
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/render_markdown.lua
|
||||
Module: plugins.kickstart.plugins.render_markdown
|
||||
Path: lua/config/plugins/render_markdown.lua
|
||||
Module: config.plugins.render_markdown
|
||||
|
||||
Purpose
|
||||
Lazy spec for render-markdown.nvim: in-buffer Markdown preview (no external
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
--[[
|
||||
Path: lua/config/plugins/spec.lua
|
||||
Module: config.plugins.spec
|
||||
|
||||
Purpose
|
||||
Builds the complete lazy.nvim plugin list: requires each per-plugin module,
|
||||
normalizes return shapes (single spec vs. `{ spec }`), and returns one flat
|
||||
`LazySpec` array for `lazy.setup()`.
|
||||
|
||||
Rationale
|
||||
Splitting each plugin into its own file keeps diffs small and matches how
|
||||
lazy.nvim expects multiple tables to be merged at setup time.
|
||||
|
||||
See `:help lazy.nvim-plugin-spec`, `:help LazySpec`.
|
||||
]]
|
||||
|
||||
---@param out table
|
||||
---@param chunk LazySpec|LazySpec[]
|
||||
local function append_specs(out, chunk)
|
||||
if type(chunk[1]) == 'string' then
|
||||
out[#out + 1] = chunk
|
||||
return
|
||||
end
|
||||
for i = 1, #chunk do
|
||||
out[#out + 1] = chunk[i]
|
||||
end
|
||||
end
|
||||
|
||||
---@type LazySpec
|
||||
local specs = {}
|
||||
local mods = {
|
||||
'config.plugins.guess_indent',
|
||||
'config.plugins.gitsigns',
|
||||
'config.plugins.which_key',
|
||||
'config.plugins.render_markdown',
|
||||
'config.plugins.telescope',
|
||||
'config.plugins.lsp',
|
||||
'config.plugins.conform',
|
||||
'config.plugins.blink',
|
||||
'config.plugins.tokyonight',
|
||||
'config.plugins.todo_comments',
|
||||
'config.plugins.mini',
|
||||
'config.plugins.treesitter',
|
||||
'config.plugins.vim_helm',
|
||||
'config.plugins.toggleterm',
|
||||
'config.plugins.mini_icons',
|
||||
'config.plugins.debug',
|
||||
'config.plugins.indent_line',
|
||||
'config.plugins.lint',
|
||||
'config.plugins.autopairs',
|
||||
'config.plugins.neo-tree',
|
||||
'custom.plugins',
|
||||
}
|
||||
|
||||
for _, mod in ipairs(mods) do
|
||||
append_specs(specs, require(mod))
|
||||
end
|
||||
|
||||
return specs
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/telescope.lua
|
||||
Module: plugins.kickstart.plugins.telescope
|
||||
Path: lua/config/plugins/telescope.lua
|
||||
Module: config.plugins.telescope
|
||||
|
||||
Purpose
|
||||
Lazy spec for telescope.nvim: fuzzy finder for files, grep, diagnostics,
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/todo_comments.lua
|
||||
Module: plugins.kickstart.plugins.todo_comments
|
||||
Path: lua/config/plugins/todo_comments.lua
|
||||
Module: config.plugins.todo_comments
|
||||
|
||||
Purpose
|
||||
Lazy spec for todo-comments.nvim: highlights TODO/FIXME/HACK-style comment
|
||||
|
|
@ -1,10 +1,10 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/toggleterm.lua
|
||||
Module: plugins.kickstart.plugins.toggleterm
|
||||
Path: lua/config/plugins/toggleterm.lua
|
||||
Module: config.plugins.toggleterm
|
||||
|
||||
Purpose
|
||||
Lazy spec for akinsho/toggleterm.nvim: floating terminal and the `:ToggleTerm`
|
||||
command used by `<leader>tf` in `plugins.kickstart.keymaps`.
|
||||
command used by `<leader>tf` in `config.keymaps`.
|
||||
|
||||
Rationale
|
||||
Keymaps referenced ToggleTerm without a plugin; this wires the dependency.
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/tokyonight.lua
|
||||
Module: plugins.kickstart.plugins.tokyonight
|
||||
Path: lua/config/plugins/tokyonight.lua
|
||||
Module: config.plugins.tokyonight
|
||||
|
||||
Purpose
|
||||
Lazy spec for tokyonight.nvim: colorscheme plugin with high priority so it
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/treesitter.lua
|
||||
Module: plugins.kickstart.plugins.treesitter
|
||||
Path: lua/config/plugins/treesitter.lua
|
||||
Module: config.plugins.treesitter
|
||||
|
||||
Purpose
|
||||
Lazy spec for nvim-treesitter: parser install list, `TSUpdate` build step,
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/vim_helm.lua
|
||||
Module: plugins.kickstart.plugins.vim_helm
|
||||
Path: lua/config/plugins/vim_helm.lua
|
||||
Module: config.plugins.vim_helm
|
||||
|
||||
Purpose
|
||||
Lazy spec for towolf/vim-helm: sets `filetype=helm` on Helm templates so
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/which_key.lua
|
||||
Module: plugins.kickstart.plugins.which_key
|
||||
Path: lua/config/plugins/which_key.lua
|
||||
Module: config.plugins.which_key
|
||||
|
||||
Purpose
|
||||
Lazy spec for which-key.nvim: discoverable pop-up of pending key sequences
|
||||
|
|
@ -7,7 +7,7 @@
|
|||
browser, including a line or range anchor from Normal or Visual mode.
|
||||
|
||||
Rationale
|
||||
Small, focused utility used by `plugins.kickstart.keymaps` (`<leader>go`).
|
||||
Small, focused utility used by `config.keymaps` (`<leader>go`).
|
||||
Kept under `custom/` so it stays clearly “yours” vs. generated plugin specs.
|
||||
|
||||
Dependencies: git(1); `vim.ui.open` on Nvim 0.10+, else `open` / `xdg-open` / `cmd start`.
|
||||
|
|
|
|||
|
|
@ -3,13 +3,13 @@
|
|||
Module: custom.plugins
|
||||
|
||||
Purpose
|
||||
Lazy.nvim specs for plugins that are not part of the main `plugins.kickstart`
|
||||
Lazy.nvim specs for plugins that are not part of the main `config`
|
||||
tree (e.g. HTTP client, experimental additions).
|
||||
|
||||
Rationale
|
||||
`plugins.kickstart.plugins.spec` appends this module last so your personal
|
||||
`config.plugins.spec` appends this module last so your personal
|
||||
plugins stay merge-friendly and easy to find. Neo-tree and core stack live
|
||||
under `plugins.kickstart.plugins` instead.
|
||||
under `config.plugins` instead.
|
||||
|
||||
See `:help lazy.nvim-plugin-spec`.
|
||||
]]
|
||||
|
|
|
|||
|
|
@ -1,59 +0,0 @@
|
|||
--[[
|
||||
Path: lua/plugins/kickstart/plugins/spec.lua
|
||||
Module: plugins.kickstart.plugins.spec
|
||||
|
||||
Purpose
|
||||
Builds the complete lazy.nvim plugin list: requires each per-plugin module,
|
||||
normalizes return shapes (single spec vs. `{ spec }`), and returns one flat
|
||||
`LazySpec` array for `lazy.setup()`.
|
||||
|
||||
Rationale
|
||||
Splitting each plugin into its own file keeps diffs small and matches how
|
||||
lazy.nvim expects multiple tables to be merged at setup time.
|
||||
|
||||
See `:help lazy.nvim-plugin-spec`, `:help LazySpec`.
|
||||
]]
|
||||
|
||||
---@param out table
|
||||
---@param chunk LazySpec|LazySpec[]
|
||||
local function append_specs(out, chunk)
|
||||
if type(chunk[1]) == 'string' then
|
||||
out[#out + 1] = chunk
|
||||
return
|
||||
end
|
||||
for i = 1, #chunk do
|
||||
out[#out + 1] = chunk[i]
|
||||
end
|
||||
end
|
||||
|
||||
---@type LazySpec
|
||||
local specs = {}
|
||||
local mods = {
|
||||
'plugins.kickstart.plugins.guess_indent',
|
||||
'plugins.kickstart.plugins.gitsigns',
|
||||
'plugins.kickstart.plugins.which_key',
|
||||
'plugins.kickstart.plugins.render_markdown',
|
||||
'plugins.kickstart.plugins.telescope',
|
||||
'plugins.kickstart.plugins.lsp',
|
||||
'plugins.kickstart.plugins.conform',
|
||||
'plugins.kickstart.plugins.blink',
|
||||
'plugins.kickstart.plugins.tokyonight',
|
||||
'plugins.kickstart.plugins.todo_comments',
|
||||
'plugins.kickstart.plugins.mini',
|
||||
'plugins.kickstart.plugins.treesitter',
|
||||
'plugins.kickstart.plugins.vim_helm',
|
||||
'plugins.kickstart.plugins.toggleterm',
|
||||
'plugins.kickstart.plugins.mini_icons',
|
||||
'plugins.kickstart.plugins.debug',
|
||||
'plugins.kickstart.plugins.indent_line',
|
||||
'plugins.kickstart.plugins.lint',
|
||||
'plugins.kickstart.plugins.autopairs',
|
||||
'plugins.kickstart.plugins.neo-tree',
|
||||
'custom.plugins',
|
||||
}
|
||||
|
||||
for _, mod in ipairs(mods) do
|
||||
append_specs(specs, require(mod))
|
||||
end
|
||||
|
||||
return specs
|
||||
Loading…
Reference in New Issue