-- UI Config.now(function() -- Global icon provider require('mini.icons').setup() Config.later(MiniIcons.tweak_lsp_kind) -- Start screen, statusline, and session management require('mini.starter').setup() require('mini.statusline').setup() require('mini.sessions').setup() end) Config.later(function() -- Git diff indicators require('mini.diff').setup() require('mini.git').setup() -- Keymap hints local miniclue = require('mini.clue') miniclue.setup({ clues = { Config.leader_group_clues, miniclue.gen_clues.builtin_completion(), miniclue.gen_clues.g(), miniclue.gen_clues.marks(), miniclue.gen_clues.registers(), miniclue.gen_clues.square_brackets(), miniclue.gen_clues.windows({ submode_resize = true }), miniclue.gen_clues.z(), }, triggers = { { mode = { 'n', 'x' }, keys = '' }, { mode = { 'n', 'x' }, keys = '[' }, { mode = { 'n', 'x' }, keys = ']' }, { mode = 'i', keys = '' }, { mode = { 'n', 'x' }, keys = 'g' }, { mode = { 'n', 'x' }, keys = "'" }, { mode = { 'n', 'x' }, keys = '`' }, { mode = { 'n', 'x' }, keys = "'" }, { mode = { 'i', 'c' }, keys = '' }, { mode = 'n', keys = '' }, { mode = { 'n', 'x' }, keys = 's' }, { mode = { 'n', 'x' }, keys = 'z' }, }, }) end) -- Editing & Navigation Config.later(function() require('mini.ai').setup() require('mini.pairs').setup() require('mini.surround').setup() require('mini.pick').setup() require('mini.bracketed').setup() require('mini.extra').setup() end) -- File Explorer Config.now_if_args(function() require('mini.files').setup() 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, 'Add default marks') end) -- Completion Config.now_if_args(function() require('mini.completion').setup({ lsp_completion = { source_func = 'omnifunc', auto_setup = false, process_items = function(items, base) return MiniCompletion.default_process_items(items, base, { kind_priority = { Text = -1 } }) end, }, }) Config.on_event('LspAttach', function() vim.bo.omnifunc = 'v:lua.MiniCompletion.completefunc_lsp' end) vim.lsp.config('*', { capabilities = MiniCompletion.get_lsp_capabilities() }) end) -- Utilities Config.now_if_args(function() require('mini.misc').setup() MiniMisc.setup_auto_root() end)