return { 'nvim-telescope/telescope.nvim', enabled = vim.fn.executable "fzf" == 1, dependencies = { 'nvim-lua/plenary.nvim', { 'nvim-telescope/telescope-fzf-native.nvim', enabled = vim.fn.executable "make" == 1, build = "make" } }, keys = { { 'fb', 'Telescope buffers' }, { 'ff', 'Telescope find_files' }, { 'fg', 'Telescope live_grep' }, { 'fc', 'Telescope git_commits' }, { 'fd', 'Telescope diagnostics' }, }, config = function() local telescope = require("telescope") local actions = require("telescope.actions") telescope.load_extension("fzf") telescope.setup({ pickers = { find_files = { hidden = true, }, }, defaults = { mappings = { i = { [""] = actions.move_selection_next, [""] = actions.move_selection_previous, [""] = actions.preview_scrolling_down, [""] = actions.preview_scrolling_up, [""] = actions.toggle_all, ["?"] = actions.which_key, ["jf"] = { "", type = "command" }, }, n = { ["jf"] = actions.close, ["?"] = actions.which_key, } }, selection_caret = " ", path_display = { "truncate" }, file_ignore_patterns = { ".git/", "target/", "docs/", "vendor/*", "%.lock", "pycache/*", "%.sqlite3", "%.ipynb", "node_modules/*", "%.svg", "%.otf", "%.ttf", "%.webp", ".dart_tool/", ".github/", ".gradle/", ".idea/", ".settings/", ".vscode/", "pycache/", "build/", "env/", "gradle/", "node_modules/", "%.pdb", "%.dll", "%.class", "%.exe", "%.cache", "%.ico", "%.pdf", "%.dylib", "%.jar", "%.docx", "%.met", "smalljre_*/*", ".vale/", "%.burp", "%.mp4", "%.mkv", "%.rar", "%.zip", "%.7z", "%.tar", "%.bz2", "%.epub", "%.flac", "%.tar.gz", }, } }) end }