Telescope plugins should be loaded _after_ telescope

This commit is contained in:
Dreaded_X 2025-06-01 21:05:20 +02:00
parent 5c946599bc
commit 2b19c01d6b
Signed by: Dreaded_X
GPG Key ID: 5A0CBFE3C3377FAA

View File

@ -3,118 +3,130 @@ local window = require("symbols.window")
--- @module "lazy" --- @module "lazy"
--- @type LazySpec --- @type LazySpec
return { return {
"nvim-telescope/telescope.nvim", {
cmd = { "Telescope" }, "nvim-telescope/telescope.nvim",
dependencies = { cmd = { "Telescope" },
"nvim-lua/plenary.nvim", lazy = false,
{ dependencies = {
"nvim-telescope/telescope-ui-select.nvim", "nvim-lua/plenary.nvim",
config = function()
require("telescope").load_extension("ui-select")
end,
}, },
{ opts = function()
"nvim-telescope/telescope-fzf-native.nvim", return {
build = "make", pickers = {
cond = function() find_files = {
return vim.fn.executable("make") == 1 hidden = true,
end,
config = function()
require("telescope").load_extension("fzf")
end,
},
},
opts = function()
return {
pickers = {
find_files = {
hidden = true,
},
},
defaults = {
file_ignore_patterns = {
".git/",
},
mappings = {
n = {
["<Tab>"] = "move_selection_worse",
["<S-Tab>"] = "move_selection_better",
},
i = {
["<Tab>"] = "move_selection_worse",
["<S-Tab>"] = "move_selection_better",
}, },
}, },
borderchars = window.borderchars, defaults = {
}, file_ignore_patterns = {
extensions = { ".git/",
["ui-select"] = { },
require("telescope.themes").get_dropdown(), mappings = {
n = {
["<Tab>"] = "move_selection_worse",
["<S-Tab>"] = "move_selection_better",
},
i = {
["<Tab>"] = "move_selection_worse",
["<S-Tab>"] = "move_selection_better",
},
},
borderchars = window.borderchars,
}, },
}, extensions = {
} ["ui-select"] = {
end, require("telescope.themes").get_dropdown(),
init = function() },
vim.keymap.set("n", "<leader>.", function() },
require("telescope.builtin").oldfiles() }
end, { desc = "Find recently opened files" }) end,
vim.keymap.set("n", "<leader>sb", function() config = function(plugin, opts)
require("telescope.builtin").buffers() require("telescope").setup(opts)
end, { desc = "Buffers" }) end,
init = function()
vim.keymap.set("n", "<leader>.", function()
require("telescope.builtin").oldfiles()
end, { desc = "Find recently opened files" })
vim.keymap.set("n", "<leader>sb", function()
require("telescope.builtin").buffers()
end, { desc = "Buffers" })
vim.keymap.set("n", "<leader>/", function() vim.keymap.set("n", "<leader>/", function()
require("telescope.builtin").current_buffer_fuzzy_find({ require("telescope.builtin").current_buffer_fuzzy_find({
-- Show matches in the order they appear in the document -- Show matches in the order they appear in the document
sorting_strategy = "ascending", sorting_strategy = "ascending",
})
end, { desc = "Fuzzily search in current buffer" })
vim.keymap.set("n", "<leader>s/", function()
require("telescope.builtin").live_grep({
grep_open_files = true,
prompt_title = "Live Grep in Open Files",
})
end, { desc = "Grep in open files" })
vim.keymap.set("n", "<leader><space>", function()
require("telescope.builtin").find_files()
end, { desc = "Find files" })
vim.keymap.set("n", "<leader>sh", function()
require("telescope.builtin").help_tags()
end, { desc = "Help" })
vim.keymap.set("n", "<leader>sw", function()
require("telescope.builtin").grep_string({
-- Show matches in the order they appear in the document
sorting_strategy = "ascending",
})
end, { desc = "Current word" })
vim.keymap.set("n", "<leader>sg", function()
require("telescope.builtin").live_grep()
end, { desc = "Grep" })
vim.keymap.set("n", "<leader>sd", function()
require("telescope.builtin").diagnostics()
end, { desc = "Diagnostics" })
vim.keymap.set("n", "<leader>sr", function()
require("telescope.builtin").resume()
end, { desc = "Resume" })
vim.keymap.set("n", "<leader>sk", function()
require("telescope.builtin").keymaps()
end, { desc = "Keymaps" })
vim.keymap.set("n", "<leader>sn", function()
require("telescope.builtin").find_files({ cwd = vim.fn.stdpath("config") })
end, { desc = "Neovim files" })
-- HACK: Workaround until new borders are fixed in telescope
vim.api.nvim_create_autocmd("User", {
pattern = "TelescopeFindPre",
callback = function()
vim.opt_local.winborder = "none"
vim.api.nvim_create_autocmd("WinLeave", {
once = true,
callback = function()
vim.opt_local.winborder = window.border
end,
}) })
end, end, { desc = "Fuzzily search in current buffer" })
}) vim.keymap.set("n", "<leader>s/", function()
end, require("telescope.builtin").live_grep({
grep_open_files = true,
prompt_title = "Live Grep in Open Files",
})
end, { desc = "Grep in open files" })
vim.keymap.set("n", "<leader><space>", function()
require("telescope.builtin").find_files()
end, { desc = "Find files" })
vim.keymap.set("n", "<leader>sh", function()
require("telescope.builtin").help_tags()
end, { desc = "Help" })
vim.keymap.set("n", "<leader>sw", function()
require("telescope.builtin").grep_string({
-- Show matches in the order they appear in the document
sorting_strategy = "ascending",
})
end, { desc = "Current word" })
vim.keymap.set("n", "<leader>sg", function()
require("telescope.builtin").live_grep()
end, { desc = "Grep" })
vim.keymap.set("n", "<leader>sd", function()
require("telescope.builtin").diagnostics()
end, { desc = "Diagnostics" })
vim.keymap.set("n", "<leader>sr", function()
require("telescope.builtin").resume()
end, { desc = "Resume" })
vim.keymap.set("n", "<leader>sk", function()
require("telescope.builtin").keymaps()
end, { desc = "Keymaps" })
vim.keymap.set("n", "<leader>sn", function()
require("telescope.builtin").find_files({ cwd = vim.fn.stdpath("config") })
end, { desc = "Neovim files" })
-- HACK: Workaround until new borders are fixed in telescope
vim.api.nvim_create_autocmd("User", {
pattern = "TelescopeFindPre",
callback = function()
vim.opt_local.winborder = "none"
vim.api.nvim_create_autocmd("WinLeave", {
once = true,
callback = function()
vim.opt_local.winborder = window.border
end,
})
end,
})
end,
},
{
"nvim-telescope/telescope-ui-select.nvim",
dependencies = {
"nvim-telescope/telescope.nvim",
},
config = function()
require("telescope").load_extension("ui-select")
end,
},
{
"nvim-telescope/telescope-fzf-native.nvim",
dependencies = {
"nvim-telescope/telescope.nvim",
},
build = "make",
cond = function()
return vim.fn.executable("make") == 1
end,
config = function()
require("telescope").load_extension("fzf")
end,
},
} }