91 lines
2.6 KiB
Lua
91 lines
2.6 KiB
Lua
-- UI
|
|
Config.now(function()
|
|
-- Global icon provider
|
|
require('mini.icons').setup()
|
|
Config.later(MiniIcons.tweak_lsp_kind)
|
|
require('mini.statusline').setup()
|
|
|
|
local starter = require('mini.starter')
|
|
starter.setup({
|
|
items = {
|
|
function()
|
|
return vim.iter({ vim.fn.glob('~/Code/*', 0, 1), vim.fn.glob('~/Documents/*/*', 0, 1) })
|
|
:flatten()
|
|
:filter(function(p) return vim.fn.isdirectory(p) == 1 end)
|
|
:map(function(p)
|
|
return {
|
|
name = vim.fn.fnamemodify(p, ':t'),
|
|
action = function()
|
|
vim.fn.chdir(p)
|
|
require('mini.files').open(p)
|
|
end,
|
|
section = 'Projects',
|
|
}
|
|
end)
|
|
:totable()
|
|
end,
|
|
|
|
starter.sections.builtin_actions(),
|
|
},
|
|
})
|
|
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 = '<Leader>' },
|
|
{ mode = { 'n', 'x' }, keys = '[' },
|
|
{ mode = { 'n', 'x' }, keys = ']' },
|
|
{ mode = 'i', keys = '<C-x>' },
|
|
{ mode = { 'n', 'x' }, keys = 'g' },
|
|
{ mode = { 'n', 'x' }, keys = "'" },
|
|
{ mode = { 'n', 'x' }, keys = '`' },
|
|
{ mode = { 'n', 'x' }, keys = '"' },
|
|
{ mode = { 'i', 'c' }, keys = '<C-r>' },
|
|
{ mode = 'n', keys = '<C-w>' },
|
|
{ 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.pick').setup()
|
|
require('mini.extra').setup()
|
|
MiniPick.registry.git_status = function() require('git').status() end
|
|
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('w', vim.fn.getcwd, { desc = 'Working directory' })
|
|
end, 'Add default marks')
|
|
end)
|
|
|
|
-- Utilities
|
|
Config.now_if_args(function()
|
|
require('mini.misc').setup()
|
|
MiniMisc.setup_auto_root()
|
|
end)
|