You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

95 lines
2.7 KiB

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 = {
['<C-x>'] = false,
['<C-q>'] = actions.send_to_qflist,
},
},
},
})
function git_branches ()
builtin.git_branches({
attach_mappings = function(_, map)
map("i", "<c-d>", actions.git_delete_branch)
map("n", "<c-d>", 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', '<C-g>', builtin.live_grep, options)
vim.keymap.set('n', '<C-p>', files, options)
vim.keymap.set('n', '<leader>df', function()
builtin.find_files({
prompt_title = "< VimRC >",
cwd = vim.fn.expand('~/.config/nvim'),
hidden = true,
})
end, options)
vim.keymap.set('n', '<leader>fb', builtin.buffers, options)
vim.keymap.set('n', '<leader>fo', builtin.oldfiles, options)
vim.keymap.set('n', '<leader>gr', builtin.lsp_references, options)
vim.keymap.set("n", '<leader>gi', builtin.lsp_implementations, options)
vim.keymap.set("n", '<leader>gT', builtin.lsp_type_definitions, options)
vim.keymap.set('n', '<leader>m', builtin.marks, options)
vim.keymap.set('n', '<leader>ch', builtin.command_history, options)
vim.keymap.set('n', '<leader>gb', git_branches, options)
vim.keymap.set('n', '<leader>gs', builtin.git_status, options)