dotfiles/nvim/lua/plugins/telescope.lua

61 lines
1.6 KiB
Lua
Raw Normal View History

2025-02-18 21:28:13 +00:00
return {
"nvim-telescope/telescope.nvim",
branch = "0.1.x",
dependencies = {
{ "nvim-telescope/telescope-fzf-native.nvim", build = "make" },
{ "nvim-telescope/telescope-ui-select.nvim" },
"nvim-lua/plenary.nvim",
},
config = function()
local telescope = require "telescope"
local builtin = require "telescope.builtin"
telescope.setup {
extensions = {
fzf = {
fuzzy = true,
override_generic_sorter = true,
override_file_sorter = true,
case_mode = "smart_case",
}
}
}
local function project()
local exclusions = {
"**/.git/",
"*.svg",
"*.png",
"*.jpg",
}
local find_command = { "fd", "--hidden", "-t", "f" }
for _, value in ipairs(exclusions) do
table.insert(find_command, "--exclude")
table.insert(find_command, value)
end
builtin.find_files {
find_command = find_command,
}
end
local function dotfiles()
builtin.git_files {
shorten_path = true,
prompt_title = " ~ dotfiles ~ ",
cwd = vim.env.DOTFILES_DIRECTORY,
}
end
telescope.load_extension("fzf")
telescope.load_extension("ui-select")
require("my.keymaps").telescope_keymaps {
project = project,
dotfiles = dotfiles,
builtin = builtin,
}
end
}