54 lines
3.0 KiB
Lua
54 lines
3.0 KiB
Lua
return {
|
|
"echasnovski/mini.nvim",
|
|
config = function()
|
|
require("mini.statusline").setup({
|
|
use_icons = true,
|
|
content = {
|
|
active = function()
|
|
local mode, mode_hl = MiniStatusline.section_mode({ trunc_width = 120 })
|
|
local git = MiniStatusline.section_git({ trunc_width = 75 })
|
|
local diagnostics = MiniStatusline.section_diagnostics({ trunc_width = 75 })
|
|
local filename = MiniStatusline.section_filename({ trunc_width = 40 })
|
|
local fileinfo = MiniStatusline.section_fileinfo({ trunc_width = 120 })
|
|
local location = MiniStatusline.section_location({ trunc_width = 75 })
|
|
local search = MiniStatusline.section_searchcount({ trunc_width = 75 })
|
|
local lsp = MiniStatusline.section_lsp({ trunc_width = 75 })
|
|
local recording = vim.fn.reg_recording()
|
|
if recording:len() > 0 then
|
|
recording = "Rec: " .. recording
|
|
end
|
|
|
|
return MiniStatusline.combine_groups({
|
|
{ hl = mode_hl, strings = { mode } },
|
|
{ hl = mode_hl, strings = { recording } },
|
|
{ hl = 'MiniStatuslineDevinfo', strings = { git, diagnostics } },
|
|
'%<', -- Mark general truncate point
|
|
{ hl = 'MiniStatuslineFilename', strings = { filename } },
|
|
'%=', -- End left alignment
|
|
{ hl = 'MiniStatuslineDevinfo', strings = { lsp } },
|
|
{ hl = 'MiniStatuslineFileinfo', strings = { fileinfo } },
|
|
{ hl = mode_hl, strings = { search, location } },
|
|
})
|
|
end
|
|
}
|
|
})
|
|
require("mini.tabline").setup()
|
|
require("mini.pairs").setup({
|
|
mappings = {
|
|
['('] = { action = 'open', pair = '()', neigh_pattern = '.[%s%z%)]' },
|
|
['['] = { action = 'open', pair = '[]', neigh_pattern = '.[%s%z%)}%]]' },
|
|
['{'] = { action = 'open', pair = '{}', neigh_pattern = '.[%s%z%)}%]]' },
|
|
|
|
[')'] = { action = 'close', pair = '()', neigh_pattern = '[^\\].' },
|
|
[']'] = { action = 'close', pair = '[]', neigh_pattern = '[^\\].' },
|
|
['}'] = { action = 'close', pair = '{}', neigh_pattern = '[^\\].' },
|
|
|
|
['"'] = { action = 'closeopen', pair = '""', neigh_pattern = '[^%w\\][^%w]', register = { cr = false } },
|
|
["'"] = { action = 'closeopen', pair = "''", neigh_pattern = '[^%w\\][^%w]', register = { cr = false } },
|
|
['`'] = { action = 'closeopen', pair = '``', neigh_pattern = '[^%w\\][^%w]', register = { cr = false } },
|
|
}
|
|
})
|
|
require("mini.colors").setup()
|
|
end
|
|
}
|