refactor: simplify

This commit is contained in:
2026-09-03 20:28:34 +02:00
parent 71434f947b
commit 82fe66dfb0
8 changed files with 147 additions and 206 deletions
+22 -46
View File
@@ -1,25 +1,21 @@
-- UI ==========================================================================
Config.now(function()
-- Global icon provider.
-- Global icon provider
require('mini.icons').setup()
Config.later(MiniIcons.tweak_lsp_kind)
-- Start screen.
-- Start screen, statusline, and session management
require('mini.starter').setup()
-- Statusline.
require('mini.statusline').setup()
-- Session management.
require('mini.sessions').setup()
end)
Config.later(function()
-- Git diff indicators.
-- Git diff indicators
require('mini.diff').setup()
require('mini.git').setup()
-- Keymap hints.
-- Keymap hints
local miniclue = require('mini.clue')
miniclue.setup({
clues = {
@@ -33,54 +29,43 @@ Config.later(function()
miniclue.gen_clues.z(),
},
triggers = {
{ mode = { 'n', 'x' }, keys = '<Leader>' }, -- Leader triggers
{ mode = { 'n', 'x' }, keys = '[' }, -- mini.bracketed
{ mode = { 'n', 'x' }, keys = '<Leader>' },
{ mode = { 'n', 'x' }, keys = '[' },
{ mode = { 'n', 'x' }, keys = ']' },
{ mode = 'i', keys = '<C-x>' }, -- Built-in completion
{ mode = { 'n', 'x' }, keys = 'g' }, -- `g` key
{ mode = { 'n', 'x' }, keys = "'" }, -- Marks
{ mode = 'i', keys = '<C-x>' },
{ mode = { 'n', 'x' }, keys = 'g' },
{ mode = { 'n', 'x' }, keys = "'" },
{ mode = { 'n', 'x' }, keys = '`' },
{ mode = { 'n', 'x' }, keys = '"' }, -- Registers
{ mode = { 'n', 'x' }, keys = '"' },
{ mode = { 'i', 'c' }, keys = '<C-r>' },
{ mode = 'n', keys = '<C-w>' }, -- Window commands
{ mode = { 'n', 'x' }, keys = 's' }, -- `s` key (mini.surround, etc.)
{ mode = { 'n', 'x' }, keys = 'z' }, -- `z` key
{ mode = 'n', keys = '<C-w>' },
{ mode = { 'n', 'x' }, keys = 's' },
{ mode = { 'n', 'x' }, keys = 'z' },
},
})
end)
-- Editing =====================================================================
-- Editing & Navigation ========================================================
Config.later(function()
-- Enhanced text objects (a/i).
require('mini.ai').setup()
-- Surround functionality (add/delete/replace).
require('mini.surround').setup()
require('mini.pick').setup()
require('mini.bracketed').setup()
require('mini.extra').setup()
end)
-- Navigation ==================================================================
-- File Explorer ===============================================================
Config.now_if_args(function()
-- File system explorer.
require('mini.files').setup()
local add_marks = function()
Config.autocmd('User', 'MiniFilesExplorerOpen', function()
MiniFiles.set_bookmark('c', vim.fn.stdpath('config'), { desc = 'Config' })
MiniFiles.set_bookmark('d', vim.fn.expand('~/Documents'), { desc = 'Documents' })
MiniFiles.set_bookmark('w', vim.fn.getcwd, { desc = 'Working directory' })
end
Config.autocmd('User', 'MiniFilesExplorerOpen', add_marks, 'Add default marks')
end)
Config.later(function()
-- Fuzzy picker.
require('mini.pick').setup()
-- Square bracket navigation.
require('mini.bracketed').setup()
end, 'Add default marks')
end)
-- Completion ==================================================================
Config.later(function()
-- Autocompletion and signature help.
require('mini.completion').setup({
lsp_completion = {
source_func = 'omnifunc',
@@ -91,24 +76,15 @@ Config.later(function()
},
})
-- Set 'omnifunc' for LSP completion only when needed.
local on_attach = function(ev)
Config.autocmd('LspAttach', nil, function(ev)
vim.bo[ev.buf].omnifunc = 'v:lua.MiniCompletion.completefunc_lsp'
end
Config.autocmd('LspAttach', nil, on_attach, "Set 'omnifunc'")
end, "Set 'omnifunc'")
-- Advertise to servers that Neovim supports certain set of completion features.
vim.lsp.config('*', { capabilities = MiniCompletion.get_lsp_capabilities() })
end)
-- Utilities ===================================================================
Config.now_if_args(function()
-- Miscellaneous utility functions.
require('mini.misc').setup()
MiniMisc.setup_auto_root()
end)
Config.later(function()
-- Extra functionality (pickers, clues).
require('mini.extra').setup()
end)