summary refs log tree commit diff
path: root/.vim/init.lua
diff options
context:
space:
mode:
Diffstat (limited to '.vim/init.lua')
-rw-r--r--.vim/init.lua129
1 files changed, 43 insertions, 86 deletions
diff --git a/.vim/init.lua b/.vim/init.lua
index 56632a8..8567589 100644
--- a/.vim/init.lua
+++ b/.vim/init.lua
@@ -170,97 +170,65 @@ vim.keymap.set('v',          'T',
   end)
 
 local misc = require('misc')
-vim.keymap.set('n',  'gd', function() misc.open_under_cursor(nil, true) end)
+vim.keymap.set('n',  'gd', function() misc.open_under_cursor(nil, true) end, {desc='open under cursor'})
 -- vim.keymap.set('n',  'gf', function() misc.file_under_cursor(function(s) vim.cmd('edit ' .. s) end) end)
-vim.keymap.set('n',  'gx', function() misc.open_under_cursor('url-launcher') end)
-vim.keymap.set('n',  'gu', function() misc.open_under_cursor('url-launcher') end)
-
-vim.keymap.set('n', '<localleader>gw', function() misc.word_under_cursor(function(s) require('telescope.builtin.files').grep_string({ search = s }) end) end)
-vim.keymap.set('n', '<localleader>ge', function() misc.expr_under_cursor(function(s) require('telescope.builtin.files').grep_string({ search = s }) end) end)
-vim.keymap.set('n', '<localleader>gf', function() misc.file_under_cursor(function(s) require('telescope.builtin.files').grep_string({ search = s }) end) end)
-vim.keymap.set('n',  '<localleader>gs', function() misc.word_under_cursor(function(s) vim.fn.feedkeys(':%s/' .. s .. '//g'); cmd [[ call feedkeys("\<left>\<left>") ]] end) end)
-wk_register {
-  ['<localleader>g'] = {
-    name = '+Grep',
-    w = {'word_under_cursor'},
-    e = {'expr_under_cursor'},
-    f = {'file_under_cursor'},
-    s = {'substitute'},
-  }
-}
+vim.keymap.set('n',  'gx', function() misc.open_under_cursor('url-launcher') end, {desc='url-launcher'})
+vim.keymap.set('n',  'gu', function() misc.open_under_cursor('url-launcher') end, {desc='url-launcher'})
 
-vim.keymap.set('n', '<leader>r', misc.live_grep)
-vim.keymap.set('n', '<leader>f', misc.find_files)
-wk_register {
-  ['<leader>r'] = {'rg'},
-  ['<leader>f'] = {'fd'},
-}
+vim.keymap.set('n', 'gw', function() misc.word_under_cursor(function(s) require('telescope.builtin.files').grep_string({ search = s }) end) end, {desc='grep for word under cursor'})
+-- vim.keymap.set('n', '<localleader>ge', function() misc.expr_under_cursor(function(s) require('telescope.builtin.files').grep_string({ search = s }) end) end)
+-- vim.keymap.set('n', '<localleader>gf', function() misc.file_under_cursor(function(s) require('telescope.builtin.files').grep_string({ search = s }) end) end)
+-- vim.keymap.set('n',  '<localleader>gs', function() misc.word_under_cursor(function(s) vim.fn.feedkeys(':%s/' .. s .. '//g'); cmd [[ call feedkeys("\<left>\<left>") ]] end) end)
 
-vim.keymap.set('n', '<localleader>dgl', 'diffget LOCAL')
-vim.keymap.set('n', '<localleader>dgr', 'diffget REMOTE')
-vim.keymap.set('n', '<localleader>dpl', 'diffpush LOCAL')
-vim.keymap.set('n', '<localleader>dpr', 'diffpush REMOTE')
-wk_register {
-  ['<localleader>d'] = {
-    name = '+Diff',
-    gl = {'get local'},
-    gr = {'get remote'},
-    pl = {'push local'},
-    pr = {'push remote'},
-  }
-}
+vim.keymap.set('n', '<leader>r', misc.live_grep, {desc='live grep (rg)'})
+vim.keymap.set('n', '<leader>f', misc.find_files, {desc='find files (fd)'})
+
+vim.keymap.set('n', '<localleader>dgl', 'diffget LOCAL', {desc='diff get local'})
+vim.keymap.set('n', '<localleader>dgr', 'diffget REMOTE', {desc='diff get remote'})
+vim.keymap.set('n', '<localleader>dpl', 'diffpush LOCAL', {desc='diff push local'})
+vim.keymap.set('n', '<localleader>dpr', 'diffpush REMOTE', {desc='diff push remote'})
 
 vim.keymap.set('x', '<localleader>f',
   [[<ESC><CMD>lua require("misc").fold_block()<CR>]],
-  { noremap = true, silent = true })
-wk_register { ['<localleader>f'] = {'fold block'} }
+  { noremap = true, silent = true, desc = 'fold block' })
 
 -- vim.keymap.set('v', '<c-r>', [[y:%s/<c-r>h//gc<left><left><left>]], { noremap = true, silent = true })
 -- }}}
 
 -- AUTO GROUPS -- {{{
 local augroup = vim.api.nvim_create_augroup
-local aucmd = vim.api.nvim_create_autocmd
+local autocmd = vim.api.nvim_create_autocmd
 
-do
-  local group = augroup('YankHighlight', { clear = true })
-  aucmd('TextYankPost', { callback = vim.highlight.on_yank, group = group })
-end
+autocmd('TextYankPost', {callback=vim.highlight.on_yank})
 
 do
   local group = augroup('ObviousActiveWin', { clear = true })
-  aucmd('WinEnter', { command = 'set cul', group = group })
-  aucmd('WinLeave', { command = 'set nocul', group = group })
+  autocmd('WinEnter', { command = 'set cul', group = group })
+  autocmd('WinLeave', { command = 'set nocul', group = group })
 end
 
-do
-  local group = augroup('OpenQuickFix', { clear = true })
-  aucmd('QuickFixCmdPost', {
-    callback = function()
-      -- make sure there is anyting in the qflist before opening it,
-      -- avoids: `E42: No Errors`
-      local qf = vim.fn.getqflist({size = true})
-      if qf and qf.size > 0 then vim.cmd [[clist]] end
-    end,
-    group = group,
-  })
-end
+autocmd('QuickFixCmdPost', {
+  callback = function()
+    -- make sure there is anyting in the qflist before opening it,
+    -- avoids: `E42: No Errors`
+    local qf = vim.fn.getqflist({size = true})
+    if qf and qf.size > 0 then vim.cmd [[clist]] end
+  end,
+  group = augroup('OpenQuickFix', {}),
+})
 
-do
-  local group = augroup('ManualMakeprg', { clear = true })
-  aucmd('VimEnter', { pattern = '*.c',
-    callback = function() vim.opt_local.makeprg = 'ninja -C build' end,
-    group = group,
-  })
-end
+autocmd('VimEnter', { pattern = '*.c',
+  callback = function() vim.opt_local.makeprg = 'ninja -C build' end,
+  group = augroup('ManualMakeprg', {}),
+})
 
 do
   local group = augroup('ManualCommentString', { clear = true })
-  aucmd('FileType', { pattern = 'i3config',
+  autocmd('FileType', { pattern = 'i3config',
     callback = function() vim.opt_local.commentstring = '# %s' end,
     group = group,
   })
-  aucmd('FileType', { pattern = 'jsonc',
+  autocmd('FileType', { pattern = 'jsonc',
     callback = function() vim.opt_local.commentstring = '// %s' end,
     group = group,
   })
@@ -268,11 +236,11 @@ end
 
 do
   local group = augroup('ManualFolds', { clear = true })
-  aucmd('VimEnter', { pattern = 'vim/*',
+  autocmd('VimEnter', { pattern = 'vim/*',
     callback = function() vim.opt_local.foldenable = true end,
     group = group,
   })
-  aucmd('FileType', { pattern = 'json,jsonc,yaml,toml',
+  autocmd('FileType', { pattern = 'json,jsonc,yaml,toml',
     callback = function() vim.opt_local.foldenable = false end,
     group = group,
   })
@@ -280,7 +248,7 @@ end
 
 do
   local group = augroup('EasyQuit', { clear = true })
-  aucmd('FileType', { pattern = 'help,neorg,dap-float',
+  autocmd('FileType', { pattern = 'help,neorg,dap-float',
     callback = function()
       vim.keymap.set('n', 'q', '<cmd>close<cr>',
         { silent = true, buffer = 0 }
@@ -288,7 +256,7 @@ do
     end,
     group = group,
   })
-  aucmd('FileType', { pattern = 'alpha',
+  autocmd('FileType', { pattern = 'alpha',
     callback = function()
       vim.keymap.set('n', 'q', '<cmd>bdel<cr>',
         { silent = true, buffer = 0 }
@@ -296,27 +264,16 @@ do
     end,
     group = group,
   })
-  aucmd('TermClose', { pattern = 'term://*',
+  autocmd('TermClose', { pattern = 'term://*',
     command = [[ if !v:event.status | exe 'bdelete! '..expand('<abuf>') | endif ]],
     group = group,
   })
 end
 
--- do
---   local group = augroup('DetectGomod', { clear = true })
---   aucmd({'BufRead', 'BufNewFile}', { pattern = 'go.mod',
---     callback = function() vim.opt_local.filetype = 'gomod' end,
---     group = group,
---   })
--- end
-
-do
-  local group = augroup('DetectBinDir', { clear = true })
-  aucmd({'BufRead', 'BufNewFile'}, { pattern = '/home/robert/bin/*',
-    callback = function() vim.opt_local.filetype = 'sh' end,
-    group = group,
-  })
-end
+autocmd({'BufRead', 'BufNewFile'}, { pattern = '/home/robert/bin/*',
+  callback = function() vim.opt_local.filetype = 'sh' end,
+  group = augroup('DetectBinDir', {}),
+})
 -- }}}
 
 -- USER COMMANDS -- {{{