summary refs log tree commit diff
path: root/.vim/lua/internal/plugins/todo.lua
diff options
context:
space:
mode:
authorRobert Günzler <r@gnzler.io>2024-11-25 13:30:37 +0100
committerRobert Günzler <r@gnzler.io>2024-11-25 13:58:25 +0100
commit23de12baba9fbfc4ca24581b37c374aa5345cc25 (patch)
treee4b3c421bad572eb85a1089eaad44dc3059ab6e6 /.vim/lua/internal/plugins/todo.lua
parent18e3848110da0a59843058927ea04b496f5db2a5 (diff)
update nvim config
Signed-off-by: Robert Günzler <r@gnzler.io>
Diffstat (limited to '')
-rw-r--r--.vim/lua/internal/plugins/todo.lua46
1 files changed, 46 insertions, 0 deletions
diff --git a/.vim/lua/internal/plugins/todo.lua b/.vim/lua/internal/plugins/todo.lua
new file mode 100644
index 0000000..e7ae0a7
--- /dev/null
+++ b/.vim/lua/internal/plugins/todo.lua
@@ -0,0 +1,46 @@
+return {
+  {
+    'folke/todo-comments.nvim',
+    dependencies = { 'nvim-lua/plenary.nvim' },
+    lazy = false,
+    cmd = { 'TodoTelescope' },
+    opts = {
+      merge_keywords = true,
+      keywords = {
+        FIX = { icon = '󰃤' },
+        TODO = { icon = '󰸞' },
+        HACK = { icon = '󰈸' },
+        WARN = { icon = '󱇎' },
+        PERF = { icon = '󰅒' },
+        NOTE = { icon = '󰐃' },
+        TEST = { icon = '󰂓' },
+      },
+      highlight = {
+        keyword = 'bg',
+        pattern = [[<(KEYWORDS)(|\(.+\))(:|)]],
+      },
+      search = {
+        pattern = [[\b(KEYWORDS)(|\(.+\))(:|)]],
+      },
+    },
+    keys = {
+      { mode = 'n', ';t', '<cmd>TodoTelescope<cr>', desc = 'telescope: todos' },
+      {
+        mode = 'n',
+        ']t',
+        function()
+          require('todo-comments').jump_next()
+        end,
+        desc = 'todo: next',
+      },
+      {
+        mode = 'n',
+        '[t',
+        function()
+          require('todo-comments').jump_prev()
+        end,
+        desc = 'todo: prev',
+      },
+    },
+  },
+}