vim-settings/neovim/lua/plugins/telescope.lua

52 lines
2.1 KiB
Lua
Raw Normal View History

2022-01-13 21:17:15 +00:00
local function load_extensions()
local utils = require("utils")
require("telescope").load_extension("file_browser")
if utils.is_plugin_loaded("nvim-notify") then
require("telescope").load_extension("notify")
end
end
local function config_telescope()
local actions = require("telescope.actions")
2021-12-15 17:37:51 +00:00
require("telescope").setup({
defaults = {
mappings = {
i = {
["<esc>"] = actions.close,
-- Disable scroll-up to allow clearing prompt
["<C-u>"] = false,
2021-12-15 17:37:51 +00:00
},
},
layout_strategy = "flex",
2021-12-15 17:37:51 +00:00
},
})
local utils = require("utils")
2024-05-30 18:05:20 +00:00
local telescope_builtin = require("telescope.builtin")
2024-05-30 18:05:20 +00:00
utils.keymap_set("n", "<C-t>", telescope_builtin.find_files, { desc = "Find files" })
utils.keymap_set("n", "<leader>b", telescope_builtin.buffers, { desc = "Find buffers" })
utils.keymap_set("n", "<leader>t", telescope_builtin.current_buffer_tags, { desc = "Find buffer tags" })
utils.keymap_set("n", "<leader>*", telescope_builtin.grep_string, { desc = "Find string under cursor" })
utils.keymap_set("n", "<leader>s", function()
require("telescope.builtin").spell_suggest(require("telescope.themes").get_cursor())
end, { desc = "Spell check" })
local finder_keymap = utils.curry_keymap("n", "<leader>f", { group_desc = "Finder" })
finder_keymap("b", telescope_builtin.buffers, { desc = "Find buffers" })
finder_keymap("f", telescope_builtin.find_files, { desc = "Find file" })
finder_keymap("g", telescope_builtin.live_grep, { desc = "Live grep" })
finder_keymap("h", telescope_builtin.help_tags, { desc = "Find help tags" })
finder_keymap("l", telescope_builtin.resume, { desc = "Resume finding" })
finder_keymap("t", telescope_builtin.current_buffer_tags, { desc = "Find buffer tags" })
finder_keymap("T", telescope_builtin.tags, { desc = "Find tags" })
2022-01-13 20:57:50 +00:00
2023-10-20 23:59:32 +00:00
if utils.can_require("sg.telescope") then
2024-05-30 18:05:20 +00:00
finder_keymap("G", require("sg.telescope").fuzzy_search_results, { desc = "Search Sourcegraph" })
2023-10-20 23:59:32 +00:00
end
2022-01-13 21:17:15 +00:00
load_extensions()
end
config_telescope()