aboutsummaryrefslogtreecommitdiffhomepage
path: root/vim/mini.lua
diff options
context:
space:
mode:
Diffstat (limited to 'vim/mini.lua')
-rw-r--r--vim/mini.lua234
1 files changed, 164 insertions, 70 deletions
diff --git a/vim/mini.lua b/vim/mini.lua
index 2646ca6..d87c01c 100644
--- a/vim/mini.lua
+++ b/vim/mini.lua
@@ -1,6 +1,6 @@
1-- vim: sw=2 foldmethod=marker foldmarker={{{,}}} 1-- vim: sw=2 foldmethod=marker foldmarker={{{,}}}
2 2
3-- Ref: https://github.com/echasnovski/mini.nvim?tab=readme-ov-file 3-- Ref: https://github.com/echasnovski/mini.nvim
4-- TODO 4-- TODO
5 5
6-- Install mini.nvim {{{ 6-- Install mini.nvim {{{
@@ -40,6 +40,17 @@ vim.g.animate_disable = true
40-- mini.basics {{{ 40-- mini.basics {{{
41require('mini.basics').setup() 41require('mini.basics').setup()
42-- }}} 42-- }}}
43-- mini.misc {{{
44require('mini.misc').setup({
45 make_global = { 'put', 'put_text', 'zoom'}
46}) --}}}
47-- mini.extra {{{
48require('mini.extra').setup()
49-- }}}
50-- mini.colors {{{
51require('mini.colors').setup()
52vim.keymap.set( 'n', '<leader>co', function() require('mini.colors').interactive() end)
53-- }}}
43-- mini.base16 {{{ 54-- mini.base16 {{{
44require('mini.base16').setup({ 55require('mini.base16').setup({
45 palette = { 56 palette = {
@@ -78,14 +89,22 @@ require('mini.base16').setup({
78 }, 89 },
79 use_cterm = true, 90 use_cterm = true,
80}) --}}} 91}) --}}}
81-- mini.misc {{{
82require('mini.misc').setup({
83 make_global = { 'put', 'put_text', 'zoom'}
84}) --}}}
85-- mini.icons {{{ 92-- mini.icons {{{
86require('mini.icons').setup({ 93require('mini.icons').setup({
87}) --}}} 94}) --}}}
95-- mini.tabline {{{
96
97require('mini.tabline').setup {}
98
99for i = 1, 9, 1 do
100 vim.keymap.set("n", string.format("<A-%s>", i), function()
101 vim.api.nvim_set_current_buf( vim.fn.getbufinfo({ buflisted=true })[i].bufnr)
102 end, {silent = true})
103end
104
105-- }}}
88-- mini.statusline {{{ 106-- mini.statusline {{{
107
89require('mini.statusline').setup({ 108require('mini.statusline').setup({
90 content = { 109 content = {
91 active = status_config 110 active = status_config
@@ -126,54 +145,52 @@ function status_config()
126 { hl = mode_hl, strings = { location } }, 145 { hl = mode_hl, strings = { location } },
127 }) 146 })
128end 147end
129-- }}}
130-- mini.clue {{{
131local miniclue = require('mini.clue')
132miniclue.setup({
133 triggers = {
134 -- Leader triggers
135 { mode = 'n', keys = '<Leader>' },
136 { mode = 'x', keys = '<Leader>' },
137
138 -- Built-in completion
139 { mode = 'i', keys = '<C-x>' },
140
141 -- `g` key
142 { mode = 'n', keys = 'g' },
143 { mode = 'x', keys = 'g' },
144
145 -- Marks
146 { mode = 'n', keys = "'" },
147 { mode = 'n', keys = '`' },
148 { mode = 'x', keys = "'" },
149 { mode = 'x', keys = '`' },
150
151 -- Registers
152 { mode = 'n', keys = '"' },
153 { mode = 'x', keys = '"' },
154 { mode = 'i', keys = '<C-r>' },
155 { mode = 'c', keys = '<C-r>' },
156
157 -- Window commands
158 { mode = 'n', keys = '<C-w>' },
159
160 -- `z` key
161 { mode = 'n', keys = 'z' },
162 { mode = 'x', keys = 'z' },
163 },
164 148
165 clues = { 149-- }}}
166 -- Enhance this by adding descriptions for <Leader> mapping groups 150-- Disabled: mini.clue {{{
167 miniclue.gen_clues.builtin_completion(), 151-- local miniclue = require('mini.clue')
168 miniclue.gen_clues.g(), 152-- miniclue.setup({
169 miniclue.gen_clues.marks(), 153-- triggers = {
170 miniclue.gen_clues.registers(), 154-- -- Leader triggers
171 miniclue.gen_clues.windows(), 155-- { mode = 'n', keys = '<Leader>' },
172 miniclue.gen_clues.z(), 156-- { mode = 'x', keys = '<Leader>' },
173 }, 157--
174})-- }}} 158-- -- Built-in completion
175-- mini.colors {{{ 159-- { mode = 'i', keys = '<C-x>' },
176require('mini.colors').setup() 160--
161-- -- `g` key
162-- { mode = 'n', keys = 'g' },
163-- { mode = 'x', keys = 'g' },
164--
165-- -- Marks
166-- { mode = 'n', keys = "'" },
167-- { mode = 'n', keys = '`' },
168-- { mode = 'x', keys = "'" },
169-- { mode = 'x', keys = '`' },
170--
171-- -- Registers
172-- { mode = 'n', keys = '"' },
173-- { mode = 'x', keys = '"' },
174-- { mode = 'i', keys = '<C-r>' },
175-- { mode = 'c', keys = '<C-r>' },
176--
177-- -- Window commands
178-- { mode = 'n', keys = '<C-w>' },
179--
180-- -- `z` key
181-- { mode = 'n', keys = 'z' },
182-- { mode = 'x', keys = 'z' },
183-- },
184--
185-- clues = {
186-- -- Enhance this by adding descriptions for <Leader> mapping groups
187-- miniclue.gen_clues.builtin_completion(),
188-- miniclue.gen_clues.g(),
189-- miniclue.gen_clues.marks(),
190-- miniclue.gen_clues.registers(),
191-- miniclue.gen_clues.windows(),
192-- miniclue.gen_clues.z(),
193-- },
177-- }}} 194-- }}}
178-- mini.comment {{{ 195-- mini.comment {{{
179require('mini.comment').setup({ 196require('mini.comment').setup({
@@ -213,29 +230,60 @@ require('mini.diff').setup({
213 }, 230 },
214}) 231})
215-- }}} 232-- }}}
216-- mini.extra {{{
217require('mini.extra').setup()
218-- }}}
219-- mini.map {{{ 233-- mini.map {{{
220require('mini.map').setup() 234require('mini.map').setup()
221-- }}} 235vim.keymap.set( 'n', '<leader><leader>mp', function() require('mini.map').toggle() end, { buffer = bufnr, desc = '' })
222-- mini.tabline {{{
223
224require('mini.tabline').setup()
225
226for i = 1, 9, 1 do
227 vim.keymap.set("n", string.format("<A-%s>", i), function()
228 vim.api.nvim_set_current_buf(vim.t.bufs[i])
229 end)
230end
231
232-- }}} 236-- }}}
233-- mini.visits {{{ 237-- mini.visits {{{
234require('mini.visits').setup() 238require('mini.visits').setup()
239vim.keymap.set( 'n', '<leader><leader>li', function()
240 MiniVisits.list_paths()
241 end,
242 { buffer = bufnr, desc = '' }
243)
235-- }}} 244-- }}}
236-- mini.completion {{{ 245-- mini.completion {{{
237require('mini.completion').setup() 246require('mini.completion').setup()
238-- }}} 247-- }}}
248-- mini.surround {{{
249require('mini.surround').setup {
250 mappings = {
251 add = 's'
252 }
253}
254-- }}}
255-- mini.indentscope {{{
256require('mini.indentscope').setup()
257-- }}}
258-- mini.splitjoin {{{
259require('mini.splitjoin').setup()
260-- }}}
261-- mini.move {{{
262require('mini.move').setup()
263-- }}}
264-- mini.pairs {{{
265require('mini.pairs').setup()
266-- }}}
267-- mini.hipatterns {{{
268local hipatterns = require('mini.hipatterns')
269hipatterns.setup({
270 highlighters = {
271 -- Highlight standalone 'FIXME', 'HACK', 'TODO', 'NOTE'
272 fixme = { pattern = '%f[%w]()FIXME()%f[%W]', group = 'MiniHipatternsFixme' },
273 hack = { pattern = '%f[%w]()HACK()%f[%W]', group = 'MiniHipatternsHack' },
274 todo = { pattern = '%f[%w]()TODO()%f[%W]', group = 'MiniHipatternsTodo' },
275 note = { pattern = '%f[%w]()NOTE()%f[%W]', group = 'MiniHipatternsNote' },
276
277 -- Highlight hex color strings (`#rrggbb`) using that color
278 hex_color = hipatterns.gen_highlighter.hex_color(),
279 },
280})
281vim.keymap.set( 'n', '<leader><leader>hi', function()
282 MiniHipatterns.toggle()
283 end,
284 { buffer = bufnr, desc = 'Toggle hex color highlight' }
285)
286-- }}}
239-- Telescope {{{ 287-- Telescope {{{
240add({ 288add({
241 source = "nvim-telescope/telescope.nvim", 289 source = "nvim-telescope/telescope.nvim",
@@ -409,15 +457,61 @@ end, { desc = "Search Directory" })-- }}}
409-- toggleterm {{{ 457-- toggleterm {{{
410 458
411add({ 459add({
412 source = "akinsho/toggleterm.nvim", 460source = "akinsho/toggleterm.nvim",
413 hooks = { post_checkout = function() end }, 461hooks = { post_checkout = function() end },
414}) 462})
415require("toggleterm").setup{ 463require("toggleterm").setup{
416 persist_size = false, 464persist_size = false,
417 direction = 'float', 465direction = 'float',
418} 466}
419 467
420vim.keymap.set({ "n", "t" }, "<A-i>", function() vim.cmd("ToggleTerm direction=float") end, { desc = "terminal toggle floating term" }) 468vim.keymap.set({ "n", "t" }, "<A-i>", function() vim.cmd("ToggleTerm direction=float") end, { desc = "terminal toggle floating term" })
421vim.keymap.set({ "n", "t" }, "<A-v>", function() vim.cmd("ToggleTerm direction=horizontal") end, { desc = "terminal toggle floating term" }) 469vim.keymap.set({ "n", "t" }, "<A-v>", function() vim.cmd("ToggleTerm direction=horizontal") end, { desc = "terminal toggle floating term" })
422 470
423--}}} 471--}}}
472-- Tig {{{
473
474add({
475 source = "iberianpig/tig-explorer.vim",
476 depends = { "rbgrouleff/bclose.vim" },
477 hooks = { post_checkout = function() end },
478})
479
480--}}}
481-- Disabled: suda {{{
482-- add { source = "lambdalisue/suda.vim" }
483-- }}}
484-- which-key {{{
485add({
486 source = "folke/which-key.nvim",
487 checkout = "stable",
488})
489require('which-key').setup {
490 defaults = {
491 win = {
492 -- don't allow the popup to overlap with the cursor
493 no_overlap = false,
494 -- width = 1,
495 height = { min = 10, max = 25 },
496 -- col = 0,
497 -- row = math.huge,
498 -- border = "none",
499 padding = { 1, 2 }, -- extra window padding [top/bottom, right/left]
500 title = true,
501 title_pos = "center",
502 zindex = 1000,
503 -- Additional vim.wo and vim.bo options
504 bo = {},
505 wo = {
506 -- winblend = 10, -- value between 0-100 0 for fully opaque and 100 for fully transparent
507 },
508 },
509 }
510}
511-- }}}
512-- true-zen {{{
513add {
514 source = "Pocco81/true-zen.nvim",
515}
516vim.keymap.set("n", "<leader>z", ":TZAtaraxis<CR>")
517-- }}}