summary refs log tree commit diff
path: root/.vim/lua/internal/plugins/todo.lua
diff options
context:
space:
mode:
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',
+      },
+    },
+  },
+}