diff options
Diffstat (limited to '.vim/lua/plugins.lua')
| -rw-r--r-- | .vim/lua/plugins.lua | 171 |
1 files changed, 65 insertions, 106 deletions
diff --git a/.vim/lua/plugins.lua b/.vim/lua/plugins.lua index 7682613..da4a9f1 100644 --- a/.vim/lua/plugins.lua +++ b/.vim/lua/plugins.lua @@ -4,8 +4,6 @@ -- load by calling `lua require('plugins')` from init.vim local g = vim.g -local augroup = vim.api.nvim_create_augroup -local autocmd = vim.api.nvim_create_autocmd -- force packer into a system directory {{{ if not vim.fn.filewritable(vim.fn.stdpath('cache')) == 2 then @@ -50,8 +48,7 @@ if not (vim.fn.empty(vim.fn.glob(compilepath)) > 0) then end -- auto-compile on save -- {{{ do - vim.api.nvim_create_user_command( - 'PackerRecompile', + vim.api.nvim_create_user_command('PackerRecompile', function() for _, client in pairs(vim.lsp.get_active_clients()) do if vim.tbl_contains(client.config.filetypes, 'lua') then @@ -116,35 +113,22 @@ require('packer').startup({function() if vim.wo.diff then return ']c' end vim.schedule(gs.next_hunk) return '<Ignore>' - end, {expr=true, buffer=bufnr}) + end, {expr=true, buffer=bufnr, desc='next hunk'}) vim.keymap.set('n', '[c', function() if vim.wo.diff then return '[c' end vim.schedule(gs.prev_hunk) return '<Ignore>' - end, {expr=true, buffer=bufnr}) + end, {expr=true, buffer=bufnr, desc='previous hunk'}) - vim.keymap.set('n', '<leader>hb', gs.toggle_current_line_blame, {buffer=bufnr}) - vim.keymap.set('n', '<leader>hB', function() gs.blame_line {full=true} end, {buffer=bufnr}) - vim.keymap.set('n', '<leader>hp', gs.preview_hunk, {buffer=bufnr}) - vim.keymap.set('n', '<leader>hd', gs.diffthis, {buffer=bufnr}) + vim.keymap.set('n', '<leader>hb', function() gs.blame_line {full=true} end, {buffer=bufnr, desc='show line blame (full)'}) + vim.keymap.set('n', '<leader>hB', function() gs.blame_line {full=false} end, {buffer=bufnr, desc='show line blame (compact)'}) + vim.keymap.set('n', '<leader>hp', gs.preview_hunk, {buffer=bufnr, desc='preview hunk'}) + vim.keymap.set('n', '<leader>hd', gs.diffthis, {buffer=bufnr, desc='diff this'}) vim.keymap.set('n', '<leader>hl', function() gs.setqflist(0, {open=false}) vim.schedule(function() require('telescope.builtin').quickfix() end) - end, {buffer=bufnr}) - - wk_register { - [']c'] = 'next git hunk', - ['[c'] = 'previous git hunk', - ['<leader>h'] = { - name = '+GitSigns', - b = 'toggle line blame', - B = 'show full line blame', - p = 'preview hunk', - d = 'diffthis', - l = 'list hunks' - } - } + end, {buffer=bufnr, desc='list hunks'}) end, } end} -- }}} @@ -208,8 +192,7 @@ require('packer').startup({function() vim.keymap.set('n', 'gT', function() vim.loop.spawn('swaymsg', {args = {'exec', '--', 'foot', '-D', vim.fn.expand('%')}}) -- vim.fn.system('swaymsg exec -- foot -D ' .. vim.fn.expand('%')) - end, { buffer = 0 }) - wk_register { ['gT'] = {'Open in foot'} } + end, {buffer=0, desc='open in foot terminal'}) end, group = vim.api.nvim_create_augroup('DirBufEnter', {}), }) @@ -698,46 +681,26 @@ require('packer').startup({function() require('telescope').load_extension('ui-select') require('telescope').load_extension('zk') - vim.keymap.set('n', ';Q', require('telescope.builtin').quickfix) - vim.keymap.set('n', ';C', require('telescope.builtin').loclist) - vim.keymap.set('n', ';H', require('telescope.builtin').help_tags) - vim.keymap.set('n', ';b', require('telescope.builtin').buffers) - vim.keymap.set('n', ';c', require('telescope.builtin').commands) - vim.keymap.set('n', ';f', require('telescope.builtin').fd) - vim.keymap.set('n', ';g', require('telescope.builtin').live_grep) - vim.keymap.set('n', ';h', require('telescope.builtin').command_history) - vim.keymap.set('n', ';l', require('telescope.builtin').current_buffer_fuzzy_find) - vim.keymap.set('n', ';o', require('telescope.builtin').oldfiles) - vim.keymap.set('n', ';d', require('telescope.builtin').diagnostics) - -- vim.keymap.set('n', ';s', require('telescope.builtin').lsp_workspace_symbols) - -- vim.keymap.set('n', ';r', require('telescope.builtin').lsp_references) + vim.keymap.set('n', ';Q', require('telescope.builtin').quickfix, {desc='quickfix'}) + vim.keymap.set('n', ';C', require('telescope.builtin').loclist, {desc='loclist'}) + vim.keymap.set('n', ';H', require('telescope.builtin').help_tags, {desc='help_tags'}) + vim.keymap.set('n', ';b', require('telescope.builtin').buffers, {desc='buffer'}) + vim.keymap.set('n', ';c', require('telescope.builtin').commands, {desc='commands'}) + vim.keymap.set('n', ';f', require('telescope.builtin').fd, {desc='fd'}) + vim.keymap.set('n', ';g', require('telescope.builtin').live_grep, {desc='grep'}) + vim.keymap.set('n', ';h', require('telescope.builtin').command_history, {desc='command history'}) + vim.keymap.set('n', ';l', require('telescope.builtin').current_buffer_fuzzy_find, {desc='buffer'}) + vim.keymap.set('n', ';o', require('telescope.builtin').oldfiles, {desc='oldfiles'}) + vim.keymap.set('n', ';d', require('telescope.builtin').diagnostics, {desc='diagnostics'}) + -- vim.keymap.set('n', ';s', require('telescope.builtin').lsp_workspace_symbols, {desc='lsp workspace symbols'}) + -- vim.keymap.set('n', ';r', require('telescope.builtin').lsp_references, {desc='lsp references'}) vim.keymap.set('n', ';v', function() require('telescope.builtin').find_files({ prompt_title = 'vimrc', previewer = false, cwd = vim.fn.stdpath('config'), }) - end) - - wk_register { - [';'] = { - name = '+Telescope', - Q = {'quickfix'}, - C = {'loclist'}, - H = {'help'}, - b = {'buffers'}, - c = {'commands'}, - f = {'fd'}, - g = {'grep'}, - h = {'command history'}, - l = {'fuzzy find buffer'}, - o = {'oldfiles (mcu)'}, - v = {'vimrc'}, - d = {'diagnostics'}, - -- s = {'workspace symbols'}, - -- r = {'references'}, - } - } + end, {desc='vim config'}) end} -- }}} use {'tpope/vim-surround'} @@ -795,43 +758,42 @@ require('packer').startup({function() }):find() end) - wk_register { - ['<leader>o'] = { - name = '+Orgmode', - a = {'agenda prompt'}, - c = {'capture prompt'}, - r = {'refile'}, - [','] = {'set priority'}, - ['*'] = {'toggle headline'}, - ['o'] = {'follow link/date'}, - ['\''] = {'create source block'}, - ['$'] = {'archive current headline'}, - ['<cr>'] = {'insert heading/item/row'}, - t = {'set tags'}, - A = {'toggle ARCHIVE tag'}, - K = {'subtree up'}, - J = {'subtree down'}, - e = {'export'}, - ['i'] = { - name = '+Timestamp', - d = {'set deadline'}, - s = {'set scheduled'}, - h = {'insert heading (respect content)'}, - T = {'insert todo'}, - t = {'insert todo (respect content)'}, - ['.'] = {'set date'}, - ['!'] = {'set inactive'}, - }, - ['x'] = { - name = '+Clock', - i = {'clock in'}, - o = {'clock out'}, - q = {'cancel active clock'}, - j = {'jump to active clock'}, - e = {'set effort estimate property'}, - } - }, - } + -- wk_register { + -- ['<leader>o'] = {name = '+Orgmode', + -- a = {'agenda prompt'}, + -- c = {'capture prompt'}, + -- r = {'refile'}, + -- [','] = {'set priority'}, + -- ['*'] = {'toggle headline'}, + -- ['o'] = {'follow link/date'}, + -- ['\''] = {'create source block'}, + -- ['$'] = {'archive current headline'}, + -- ['<cr>'] = {'insert heading/item/row'}, + -- t = {'set tags'}, + -- A = {'toggle ARCHIVE tag'}, + -- K = {'subtree up'}, + -- J = {'subtree down'}, + -- e = {'export'}, + -- ['i'] = { + -- name = '+Timestamp', + -- d = {'set deadline'}, + -- s = {'set scheduled'}, + -- h = {'insert heading (respect content)'}, + -- T = {'insert todo'}, + -- t = {'insert todo (respect content)'}, + -- ['.'] = {'set date'}, + -- ['!'] = {'set inactive'}, + -- }, + -- ['x'] = { + -- name = '+Clock', + -- i = {'clock in'}, + -- o = {'clock out'}, + -- q = {'cancel active clock'}, + -- j = {'jump to active clock'}, + -- e = {'set effort estimate property'}, + -- } + -- }, + -- } end} -- }}} use {'nvim-neorg/neorg', ft = {'norg'}, module = {'neorg'}, cmd = {'Neorg'}, -- {{{ @@ -901,8 +863,7 @@ require('packer').startup({function() }, }, } - vim.keymap.set('n', ';z', function() require('zk').edit(nil, { multi_select = false }) end) - wk_register { [';'] = { name = '+Telescope', z = {'zk'} } } + vim.keymap.set('n', ';z', function() require('zk').edit(nil, { multi_select = false }) end, {desc='zk'}) end} -- }}} -- languages @@ -1164,8 +1125,7 @@ require('packer').startup({function() }) end - vim.keymap.set('n', '<leader>a', function() vim.cmd [[Alpha]] end) - wk_register { ['<leader>a'] = {'alpha'} } + vim.keymap.set('n', '<leader>a', function() vim.cmd [[Alpha]] end, {desc='alpha'}) end} -- }}} use {'ruifm/gitlinker.nvim', module = {'gitlinker'}, -- {{{ @@ -1176,7 +1136,6 @@ require('packer').startup({function() action_callback = require('gitlinker.actions').copy_to_clipboard, }, } - wk_register { ['<leader>g'] = { name = '+Git', y = {'gitlinker'} } } end} -- }}} use {'rhysd/git-messenger.vim', -- {{{ @@ -1185,18 +1144,18 @@ require('packer').startup({function() vim.g.git_messenger_always_into_popup = true vim.g.git_messenger_close_on_cursor_moved = true vim.g.git_messenger_no_default_mappings = true - vim.keymap.set('n', '<leader>gm', function() vim.cmd [[GitMessenger]] end) - wk_register { ['<leader>g'] = { name = '+Git', m = {'git-messenger'} } } + vim.keymap.set('n', '<leader>gm', function() vim.cmd [[GitMessenger]] end, {desc='git-messenger'}) end} -- }}} -- restore last cursor position (and handle many edge cases) use {'farmergreg/vim-lastplace'} use {'folke/todo-comments.nvim', module = {'telescope._extensions.todo-comments'}, cmd = {'TodoTelescope'}, -- {{{ + setup = function() + vim.keymap.set('n', ';t', function() vim.cmd [[TodoTelescope]] end, {desc='todo-comments'}) + end, config = function() require('todo-comments').setup {} - -- vim.keymap.set('n', ';t', function() vim.cmd [[TodoTelescope]] end) - -- wk_register { [';'] = { name = '+Telescope', t = {'todo-comments'} } } end} -- }}} -- spelling related stuff |