summary refs log tree commit diff
path: root/.vim/lua/plugins.lua
diff options
context:
space:
mode:
Diffstat (limited to '.vim/lua/plugins.lua')
-rw-r--r--.vim/lua/plugins.lua140
1 files changed, 65 insertions, 75 deletions
diff --git a/.vim/lua/plugins.lua b/.vim/lua/plugins.lua
index 17fd879..07d2b45 100644
--- a/.vim/lua/plugins.lua
+++ b/.vim/lua/plugins.lua
@@ -71,10 +71,11 @@ return require('packer').startup({function()
   use {'lewis6991/impatient.nvim'}
 
   -- neat helper for when you don't remember your keymap
-  use {'folke/which-key.nvim', module = {'which-key'}, -- {{{
+  use {'folke/which-key.nvim', -- {{{
     config = function()
       require('which-key').setup {
-        icons = { separator = ':' }
+        icons = { separator = '→ ', group = '🞱 ' },
+        triggers = {'<leader>', '<localleader>', ';', 'g', '[', ']'},
       }
     end} -- }}}
 
@@ -666,40 +667,25 @@ return require('packer').startup({function()
           })
         end)
 
-      -- do
-      --   local group = vim.api.nvim_create_augroup('Telescope', { clear = true })
-      --   vim.api.nvim_create_autocmd('QuickFixCmdPost', {
-      --     callback = require('telescope.builtin').quickfix,
-      --     group = group,
-      --   })
-      -- end
-
-      do
-        local installed, wk = pcall(require, 'which-key')
-        if not installed then return 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)'},
-            t = {'tags'},
-            v = {'vimrc'},
-            d = {'diagnostics'},
-            s = {'workspace symbols'},
-            a = {'code actions'},
-            r = {'references'},
-            z = {'zk'},
-          }
+      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
+      }
     end} -- }}}
 
   use {'junegunn/vim-easy-align', cmd = {'EasyAlign', 'LiveEasyAlign'}, -- {{{
@@ -763,47 +749,43 @@ return require('packer').startup({function()
           }):find()
         end)
 
-      do
-        local installed, wk = pcall(require, 'which-key')
-        if not installed then return 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'},
           },
-        }
-      end
+          ['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'}, -- {{{
@@ -874,6 +856,7 @@ return require('packer').startup({function()
         },
       }
       vim.keymap.set('n', ';z', function() require('zk').edit(nil, { multi_select = false }) end)
+      wk_register { [';'] = { name = '+Telescope', z = {'zk'} } }
     end} -- }}}
 
   -- languages
@@ -1067,6 +1050,9 @@ return require('packer').startup({function()
           group = group,
         })
       end
+
+      vim.keymap.set('n', '<leader>a', function() vim.cmd [[Alpha]] end)
+      wk_register { ['<leader>a'] = {'alpha'} }
     end} -- }}}
 
   use {'ruifm/gitlinker.nvim', -- {{{
@@ -1077,6 +1063,7 @@ return 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', -- {{{
@@ -1086,6 +1073,7 @@ return require('packer').startup({function()
       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'} } }
     end} -- }}}
 
   -- restore last curosr position (and handle many edge cases)
@@ -1094,6 +1082,8 @@ return require('packer').startup({function()
   use {'folke/todo-comments.nvim', -- {{{
     config = function()
       require('todo-comments').setup {}
+      -- vim.keymap.set('n', ';t', function() vim.cmd [[TodoTelescope]] end)
+      -- wk_register { [';'] = { name = '+Telescope', t = {'todo-comments'} } }
     end} -- }}}
 
   use {'lewis6991/spellsitter.nvim', disable = true, -- {{{