nvim: rework telescope configuration

This commit is contained in:
Primrose 2025-07-03 10:10:57 +02:00
parent 5c88497f0a
commit d302e65303
Signed by: primrose
GPG key ID: 4E887A4CA9714ADA

View file

@ -1,9 +1,8 @@
local ts = require("telescope") local telescope = require("telescope")
local actions = require("telescope.actions") local actions = require("telescope.actions")
local themes = require("telescope.themes") local themes = require("telescope.themes")
local config = require("telescope.config") local config = require("telescope.config")
local builtin = require("telescope.builtin") local builtin = require("telescope.builtin")
local map = vim.keymap.set
-- Clone the default Telescope configuration -- Clone the default Telescope configuration
local vimgrep_arguments = { unpack(config.values.vimgrep_arguments) } local vimgrep_arguments = { unpack(config.values.vimgrep_arguments) }
@ -12,31 +11,46 @@ table.insert(vimgrep_arguments, "--hidden") -- search hidden
table.insert(vimgrep_arguments, "--glob") -- ignore git table.insert(vimgrep_arguments, "--glob") -- ignore git
table.insert(vimgrep_arguments, "!**/.git/*") table.insert(vimgrep_arguments, "!**/.git/*")
ts.setup { telescope.setup {
defaults = { -- Workaround
-- https://github.com/nvim-telescope/telescope.nvim/issues/938#issuecomment-877539724
defaults = themes.get_ivy {
vimgrep_arguments = vimgrep_arguments, vimgrep_arguments = vimgrep_arguments,
mappings = { mappings = {
i = { i = {
["<esc>"] = actions.close, ["<esc>"] = actions.close,
}, },
}, },
layout_config = { height = 0.4 },
borderchars = {
"",
"",
"",
"",
"",
"",
"",
"",
},
}, },
pickers = { pickers = {
find_files = { find_files = {
find_command = { "rg", "--files", "--hidden", "--glob", "!**/.git/*" }, find_command = { "rg", "--files", "--hidden", "--glob", "!**/.git/*" },
}, },
current_buffer_fuzzy_find = {
previewer = false,
},
}, },
} }
-- Enable telescope fzf native, if installed -- Enable telescope fzf native, if installed
pcall(require("telescope").load_extension, "fzf") pcall(require("telescope").load_extension, "fzf")
map("n", "<leader>/", function() builtin.current_buffer_fuzzy_find(themes.get_dropdown { previewer = false }) end) vim.keymap.set("n", "/", builtin["current_buffer_fuzzy_find"])
map("n", "<leader>sf", builtin.find_files) vim.keymap.set("n", "<leader>/", builtin["find_files"])
map("n", "<leader>gf", builtin.git_files) -- vim.keymap.set("n", "<leader>g/", builtin["git_files"])
map("n", "<leader>?", builtin.help_tags) vim.keymap.set("n", "<leader>?", builtin["help_tags"])
map("n", "<leader>sw", builtin.grep_string) vim.keymap.set("n", "<leader>g/", builtin["live_grep"])
map("n", "<leader>sg", builtin.live_grep) vim.keymap.set("n", "<leader>d", builtin["diagnostics"])
map("n", "<leader>sd", builtin.diagnostics) vim.keymap.set("n", "<leader>b", builtin["buffers"])
map("n", "<leader>b", builtin.buffers) vim.keymap.set("n", "<leader>sp", builtin["spell_suggest"])
map("n", "<leader>sp", builtin.spell_suggest)