Skip to content
Snippets Groups Projects
Unverified Commit 6fb9910b authored by amtoine's avatar amtoine
Browse files

clean up `custom.telescope`

parent 71bcb5b4
No related branches found
No related tags found
No related merge requests found
local nmap = require("custom._utils").nmap
local telescope = require('telescope')
local actions = require("telescope.actions")
local builtin = require("telescope.builtin")
-- See `:help telescope` and `:help telescope.setup()`
require('telescope').setup {
telescope.setup {
defaults = {
mappings = {
i = {
['<C-u>'] = false,
['<C-d>'] = false,
['<Esc>'] = require('telescope.actions').close,
['<C-l>'] = require('telescope.actions').select_vertical,
['<C-j>'] = require('telescope.actions').select_horizontal,
['<Esc>'] = actions.close,
['<C-l>'] = actions.select_vertical,
['<C-j>'] = actions.select_horizontal,
},
},
},
}
-- Enable telescope fzf native, if installed
pcall(require('telescope').load_extension, 'fzf')
pcall(telescope.load_extension, 'fzf')
-- Custom live_grep function to search in git root
local function live_grep_git_root()
local git_root = require("custom._utils").find_git_root()
if git_root then
require('telescope.builtin').live_grep {
builtin.live_grep {
search_dirs = { git_root },
}
end
......@@ -28,35 +33,35 @@ end
vim.api.nvim_create_user_command('LiveGrepGitRoot', live_grep_git_root, {})
-- See `:help telescope.builtin`
vim.keymap.set('n', '<leader>?', require('telescope.builtin').oldfiles, { desc = '[?] Find recently opened files' })
vim.keymap.set('n', '<leader><space>', function()
require('telescope.builtin').buffers {
nmap('<leader>?', builtin.oldfiles, '[?] Find recently opened files')
nmap('<leader><space>', function()
builtin.buffers {
ignore_current_buffer = true,
sort_last_used = true
}
end, { desc = '[ ] Find existing buffers' })
vim.keymap.set('n', '<leader>/', function()
end, '[ ] Find existing buffers')
nmap('<leader>/', function()
-- You can pass additional configuration to telescope to change theme, layout, etc.
require('telescope.builtin').current_buffer_fuzzy_find(require('telescope.themes').get_dropdown {
builtin.current_buffer_fuzzy_find(require('telescope.themes').get_dropdown {
winblend = 10,
previewer = false,
})
end, { desc = '[/] Fuzzily search in current buffer' })
end, '[/] Fuzzily search in current buffer')
vim.keymap.set('n', '<leader>sgf', require('telescope.builtin').git_files, { desc = 'Search [G]it [F]iles' })
nmap('<leader>sgf', builtin.git_files, 'Search [G]it [F]iles')
local function telescope_live_grep_open_files()
require('telescope.builtin').live_grep {
builtin.live_grep {
grep_open_files = true,
prompt_title = 'Live Grep in Open Files',
}
end
vim.keymap.set('n', '<leader>s/', telescope_live_grep_open_files, { desc = '[S]earch [/] in Open Files' })
vim.keymap.set('n', '<leader>ss', require('telescope.builtin').builtin, { desc = '[S]earch [S]elect Telescope' })
vim.keymap.set('n', '<leader>gf', require('telescope.builtin').git_files, { desc = 'Search [G]it [F]iles' })
vim.keymap.set('n', '<leader>sf', require('telescope.builtin').find_files, { desc = '[S]earch [F]iles' })
vim.keymap.set('n', '<leader>sh', require('telescope.builtin').help_tags, { desc = '[S]earch [H]elp' })
vim.keymap.set('n', '<leader>sw', require('telescope.builtin').grep_string, { desc = '[S]earch current [W]ord' })
vim.keymap.set('n', '<leader>slg', require('telescope.builtin').live_grep, { desc = '[S]earch by [G]rep' })
vim.keymap.set('n', '<leader>sG', ':LiveGrepGitRoot<cr>', { desc = '[S]earch by [G]rep on Git Root' })
vim.keymap.set('n', '<leader>sd', require('telescope.builtin').diagnostics, { desc = '[S]earch [D]iagnostics' })
vim.keymap.set('n', '<leader>sr', require('telescope.builtin').resume, { desc = '[S]earch [R]esume' })
nmap('<leader>s/', telescope_live_grep_open_files, '[S]earch [/] in Open Files')
nmap('<leader>ss', builtin.builtin, '[S]earch [S]elect Telescope')
nmap('<leader>gf', builtin.git_files, 'Search [G]it [F]iles')
nmap('<leader>sf', builtin.find_files, '[S]earch [F]iles')
nmap('<leader>sh', builtin.help_tags, '[S]earch [H]elp')
nmap('<leader>sw', builtin.grep_string, '[S]earch current [W]ord')
nmap('<leader>slg', builtin.live_grep, '[S]earch by [G]rep')
nmap('<leader>sG', ':LiveGrepGitRoot<cr>', '[S]earch by [G]rep on Git Root')
nmap('<leader>sd', builtin.diagnostics, '[S]earch [D]iagnostics')
nmap('<leader>sr', builtin.resume, '[S]earch [R]esume')
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment