local pickers = require('telescope.pickers') local finders = require('telescope.finders') local previewers = require('telescope.previewers') local action_state = require('telescope.actions.state') local conf = require('telescope.config').values local builtin = require('telescope.builtin') local sorters = require('telescope.sorters') local actions = require('telescope.actions') require('telescope').setup({ defaults = { file_sorter = sorters.get_fzy_sorter, prompt_prefix = ' >', color_devicons = true, file_previewer = previewers.vim_buffer_cat.new, grep_previewer = previewers.vim_buffer_vimgrep.new, qflist_previewer = previewers.vim_buffer_qflist.new, initial_mode = "insert", selection_strategy = "reset", sorting_strategy = "ascending", layout_strategy = "horizontal", layout_config = { horizontal = { prompt_position = "top", preview_width = 0.55, results_width = 0.8, }, vertical = { mirror = false, }, width = 0.87, height = 0.80, preview_cutoff = 120, }, path_display = { "truncate" }, winblend = 0, border = {}, borderchars = { "─", "│", "─", "│", "╭", "╮", "╯", "╰" }, mappings = { i = { [''] = false, [''] = actions.send_to_qflist, }, }, }, }) function git_branches () builtin.git_branches({ attach_mappings = function(_, map) map("i", "", actions.git_delete_branch) map("n", "", actions.git_delete_branch) return true end, }) end function files () local ran, errorMessage = pcall(function() builtin.git_files({ show_untracked = true }) end) if not ran then builtin.find_files() end end local options = { noremap = true } vim.keymap.set('n', '', builtin.live_grep, options) vim.keymap.set('n', '', files, options) vim.keymap.set('n', 'df', function() builtin.find_files({ prompt_title = "< VimRC >", cwd = vim.fn.expand('~/.config/nvim'), hidden = true, }) end, options) vim.keymap.set('n', 'fb', builtin.buffers, options) vim.keymap.set('n', 'fo', builtin.oldfiles, options) vim.keymap.set('n', 'gr', builtin.lsp_references, options) vim.keymap.set("n", 'gi', builtin.lsp_implementations, options) vim.keymap.set("n", 'gT', builtin.lsp_type_definitions, options) vim.keymap.set('n', 'm', builtin.marks, options) vim.keymap.set('n', 'ch', builtin.command_history, options) vim.keymap.set('n', 'gb', git_branches, options) vim.keymap.set('n', 'gs', builtin.git_status, options)