Files
dotfiles/nvim/.config/nvim/lua/romanzy/plugins/mini.lua
T
2026-09-18 01:50:34 +02:00

97 lines
2.6 KiB
Lua

vim.pack.add({
{
src = "https://github.com/echasnovski/mini.nvim",
name = "mini.nvim",
branch = "stable",
},
})
local clue = require("mini.clue")
local completion = require("mini.completion")
local icons = require("mini.icons")
local git = require("mini.git")
local diff = require("mini.diff")
local statusline = require("mini.statusline")
local hipatterns = require("mini.hipatterns")
local pairs = require("mini.pairs")
local ai = require("mini.ai")
local notify = require("mini.notify")
local surround = require("mini.surround")
clue.setup({
triggers = {
{ mode = "n", keys = "<leader>" },
{ mode = "n", keys = "g" },
{ mode = "n", keys = "<C-w>" },
{ mode = "n", keys = "z" },
{ mode = "i", keys = "<C-x>" },
},
clues = {
clue.gen_clues.builtin_completion(),
clue.gen_clues.g(),
clue.gen_clues.marks(),
clue.gen_clues.registers(),
clue.gen_clues.windows(),
clue.gen_clues.z(),
},
window = {
delay = 500,
},
})
icons.setup({})
git.setup({})
diff.setup({})
local function set_mini_diff_highlights()
vim.api.nvim_set_hl(0, "MiniDiffSignAdd", { fg = "#9ccf8d" })
vim.api.nvim_set_hl(0, "MiniDiffSignChange", { fg = "#f6c177" })
vim.api.nvim_set_hl(0, "MiniDiffSignDelete", { fg = "#eb6f92" })
vim.api.nvim_set_hl(0, "MiniDiffOverAdd", { fg = "#9ccf8d" })
vim.api.nvim_set_hl(0, "MiniDiffOverChange", { fg = "#f6c177" })
vim.api.nvim_set_hl(0, "MiniDiffOverDelete", { fg = "#eb6f92" })
end
set_mini_diff_highlights()
vim.api.nvim_create_autocmd("ColorScheme", {
callback = set_mini_diff_highlights,
})
statusline.setup({ use_icons = true })
hipatterns.setup({
highlighters = {
fixme = { pattern = "%f[%w]()FIXME()%f[%W]", group = "MiniHipatternsFixme" },
hack = { pattern = "%f[%w]()HACK()%f[%W]", group = "MiniHipatternsHack" },
todo = { pattern = "%f[%w]()TODO()%f[%W]", group = "MiniHipatternsTodo" },
note = { pattern = "%f[%w]()NOTE()%f[%W]", group = "MiniHipatternsNote" },
hex_color = hipatterns.gen_highlighter.hex_color(),
},
})
pairs.setup({
modes = { insert = true, command = true, terminal = false },
})
completion.setup({})
vim.keymap.set("i", "<CR>", function()
if vim.fn.complete_info({ "selected" }).selected ~= -1 then
return "\25"
end
return MiniPairs.cr()
end, { expr = true })
ai.setup({})
notify.setup({
lsp_progress = {
-- the message "lua_ls: processing completion..." and
-- "lua_ls: Diagnosing" is very annoying
enable = true,
},
})
vim.notify = notify.make_notify()
surround.setup({})