diff --git a/lua/custom/plugins/telescope.lua b/lua/custom/plugins/telescope.lua new file mode 100644 index 0000000..d2c6291 --- /dev/null +++ b/lua/custom/plugins/telescope.lua @@ -0,0 +1,12 @@ +return { + "nvim-telescope/telescope.nvim", + dependencies = { + { "nvim-telescope/telescope-fzf-native.nvim", build = "make" }, + "nvim-lua/plenary.nvim", + "nvim-tree/nvim-web-devicons", + "folke/todo-comments.nvim", + }, + config = function() + require "custom.telescope" + end, +} diff --git a/lua/custom/telescope.lua b/lua/custom/telescope.lua new file mode 100644 index 0000000..0ea13f1 --- /dev/null +++ b/lua/custom/telescope.lua @@ -0,0 +1,19 @@ +require("telescope").setup { + defaults = { + path_display = { "smart" }, + }, +} + +-- Load fzf extension to imporve performance +pcall(require("telescope").load_extension, "fzf") + +local builtin = require("telescope.builtin") +local keymap = vim.keymap +keymap.set("n", "ff", builtin.find_files, { desc = "FZF: find files in cwd" }) +keymap.set("n", "fml", builtin.marks, { desc = "FZF: find marks list" }) +keymap.set("n", "fmp", builtin.man_pages, { desc = "FZF: find available man pages" }) +keymap.set("n", "fg", builtin.live_grep, { desc = "FZF: find string in cwd" }) +keymap.set("n", "fb", builtin.buffers, { desc = "FZF: display opened buffers" }) +keymap.set("n", "fh", builtin.help_tags, { desc = "FZF: display help tags" }) +keymap.set("n", "ft", "TodoTelescope", { desc = "FZF: display TODO comments" }) +keymap.set("n", "fds", builtin.lsp_document_symbols, { desc = "FZF: Document symbols" })