telescope.lua (1906B)
1 return { 2 'nvim-telescope/telescope.nvim', 3 event = 'VimEnter', 4 dependencies = { 5 'nvim-lua/plenary.nvim', 6 { 7 'nvim-telescope/telescope-fzf-native.nvim', 8 build = 'make' 9 }, 10 'nvim-telescope/telescope-ui-select.nvim', 11 }, 12 config = function() 13 require('telescope').setup { 14 extensions = { 15 ['ui-select'] = { 16 require('telescope.themes').get_dropdown(), 17 }, 18 }, 19 } 20 21 pcall(require('telescope').load_extension, 'fzf') 22 pcall(require('telescope').load_extension, 'ui-select') 23 24 local builtin = require 'telescope.builtin' 25 vim.keymap.set('n', '<leader>sh', builtin.help_tags, { desc = '[S]earch [H]elp' }) 26 vim.keymap.set('n', '<leader>sk', builtin.keymaps, { desc = '[S]earch [K]eymaps' }) 27 vim.keymap.set('n', '<leader>ss', builtin.builtin, { desc = '[S]earch [S]elect Telescope' }) 28 vim.keymap.set('n', '<leader>sw', builtin.grep_string, { desc = '[S]earch current [W]ord' }) 29 vim.keymap.set('n', '<leader>sg', builtin.live_grep, { desc = '[S]earch by [G]rep' }) 30 vim.keymap.set('n', '<leader>sd', builtin.diagnostics, { desc = '[S]earch [D]iagnostics' }) 31 vim.keymap.set('n', '<leader>sr', builtin.resume, { desc = '[S]earch [R]esume' }) 32 vim.keymap.set('n', '<leader>s.', builtin.oldfiles, { desc = '[S]earch Recent Files ("." for repeat)' }) 33 vim.keymap.set('n', '<leader>,', builtin.buffers) 34 vim.keymap.set('n', '<leader>.', builtin.find_files) 35 vim.keymap.set('n', '<leader>>', function() 36 builtin.find_files { no_ignore = true } 37 end, { desc = 'find all files' }) 38 39 vim.keymap.set('n', '<leader>sn', function() 40 builtin.find_files { cwd = vim.fn.stdpath 'config' } 41 end, { desc = '[S]earch [N]eovim files' } ) 42 43 vim.keymap.set('n', '<leader>sm', function() 44 builtin.man_pages { sections = { '1', '2', '3' } } 45 end, { desc = '[S]earch [M]an pages' }) 46 end, 47 }