aboutsummaryrefslogtreecommitdiff
path: root/lua
diff options
context:
space:
mode:
authorpml68 <contact@pml68.dev>2024-12-16 23:55:48 +0100
committerpml68 <contact@pml68.dev>2024-12-16 23:55:48 +0100
commit51638918596ed4f54fcb19abcee55edc01ed77a4 (patch)
tree19bad8770762444551a68d433cbbf2e16762fb9d /lua
parentrefactor(plugins): replace rust.vim with fmt("rustfmt") in guard.nvim (diff)
downloadnvim-51638918596ed4f54fcb19abcee55edc01ed77a4.tar.gz
feat: new keymap for finding TODOs
Diffstat (limited to '')
-rw-r--r--lua/pml68/plugins/telescope.lua7
-rw-r--r--lua/pml68/remap.lua22
2 files changed, 29 insertions, 0 deletions
diff --git a/lua/pml68/plugins/telescope.lua b/lua/pml68/plugins/telescope.lua
index 9c5de69..b11e28d 100644
--- a/lua/pml68/plugins/telescope.lua
+++ b/lua/pml68/plugins/telescope.lua
@@ -5,4 +5,11 @@ return {
dependencies = {
"nvim-lua/plenary.nvim"
},
+ opts = {
+ pickers = {
+ find_files = {
+ find_command = { "rg", "--files", "--hidden" },
+ },
+ },
+ },
}
diff --git a/lua/pml68/remap.lua b/lua/pml68/remap.lua
index 9da8f91..92614a9 100644
--- a/lua/pml68/remap.lua
+++ b/lua/pml68/remap.lua
@@ -62,6 +62,28 @@ vim.keymap.set('n', '<leader>fh', "<cmd>Telescope help_tags<CR>", {})
vim.keymap.set('n', '<leader>fz', "<cmd>Telescope current_buffer_fuzzy_find<CR>", {})
vim.keymap.set('n', '<leader>fg', "<cmd>Telescope git_files<CR>", {})
vim.keymap.set('n', '<leader>fd', "<cmd>Telescope diagnostics<CR>", {})
+vim.keymap.set('n', '<leader>ft', function()
+ local telescope = require("telescope.builtin")
+ local todo_files = {}
+
+ local handle = io.popen("rg --files -g 'TODO.{md,txt}'")
+ local result = handle:read("*a")
+ handle:close()
+
+ for file in result:gmatch("[^\r\n]+") do
+ table.insert(todo_files, file)
+ end
+
+ if #todo_files > 0 then
+ telescope.find_files({
+ prompt_title = "Choose TODO file",
+ cwd = vim.fn.getcwd(),
+ search_dirs = todo_files
+ })
+ else
+ telescope.grep_string({ search = "TODO" })
+ end
+end, { noremap = true, silent = true })
-- Diagnostics, LSP
vim.keymap.set('n', 'gl', '<cmd>lua vim.diagnostic.open_float()<CR>')