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") require("telescope").setup({ defaults = { mappings = { i = { [""] = actions.close, -- Disable scroll-up to allow clearing prompt [""] = false, }, }, layout_strategy = "flex", }, }) local utils = require("utils") utils.keymap_set("n", "", "lua require('telescope.builtin').find_files()", { desc = "Find files" }) utils.keymap_set("n", "b", "lua require('telescope.builtin').buffers()", { desc = "Find buffers" }) utils.keymap_set( "n", "t", "lua require('telescope.builtin').current_buffer_tags()", { desc = "Find buffer tags" } ) utils.keymap_set( "n", "*", "lua require('telescope.builtin').grep_string()", { desc = "Find string under cursor" } ) -- Better spelling replacement for word under cursor utils.keymap_set( "n", "s", "lua require('telescope.builtin').spell_suggest(require('telescope.themes').get_cursor())", { desc = "Spell check" } ) local finder_keymap = utils.curry_keymap("n", "f") finder_keymap("b", "lua require('telescope.builtin').buffers()", { desc = "Find buffers" }) finder_keymap("f", "lua require('telescope.builtin').find_files()", { desc = "Find file" }) finder_keymap("g", "lua require('telescope.builtin').live_grep()", { desc = "Live grep" }) finder_keymap("h", "lua require('telescope.builtin').help_tags()", { desc = "Find help tags" }) finder_keymap("l", "lua require('telescope.builtin').resume()", { desc = "Resume finding" }) finder_keymap("t", "lua require('telescope.builtin').current_buffer_tags()", { desc = "Find buffer tags" }) finder_keymap("T", "lua require('telescope.builtin').tags()", { desc = "Find tags" }) load_extensions() end config_telescope()