diff options
| author | moxie <moxie.git@posteo.net> | 2025-09-30 12:27:44 +0300 |
|---|---|---|
| committer | moxie <moxie.git@posteo.net> | 2025-09-30 12:27:44 +0300 |
| commit | 1e27d1c7b25e4d28a25c0fa2c4e6e33a66b9072e (patch) | |
| tree | 7169509b4d5dfce3ed25fe333cc506a40f5c90f2 /.config/nvim/lua/plugins/telescope.lua | |
| parent | 51797f743fe74d1723ca62085f92e8c5e953038b (diff) | |
add nvim configs
Diffstat (limited to '.config/nvim/lua/plugins/telescope.lua')
| -rw-r--r-- | .config/nvim/lua/plugins/telescope.lua | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/.config/nvim/lua/plugins/telescope.lua b/.config/nvim/lua/plugins/telescope.lua new file mode 100644 index 0000000..4d8e86c --- /dev/null +++ b/.config/nvim/lua/plugins/telescope.lua @@ -0,0 +1,48 @@ +return { + 'nvim-telescope/telescope.nvim', + dependencies = { + { 'nvim-lua/plenary.nvim' }, + { 'nvim-telescope/telescope-fzf-native.nvim', build = 'make' }, + { 'nvim-telescope/telescope-smart-history.nvim' }, + { 'kkharji/sqlite.lua' }, + }, + config = function() + local data = assert(vim.fn.stdpath 'data') --[[@as string]] + + require('telescope').setup { + extensions = { + fzf = { + fuzzy = true, + override_generic_sorter = true, + override_file_sorter = true, + case_mode = 'smart_case', + }, + wrap_results = true, + history = { + path = vim.fs.joinpath(data, 'telescope_history.sqlite3'), + limit = 100, + }, + }, + } + + pcall(require('telescope').load_extension, 'fzf') + pcall(require('telescope').load_extension, 'smart_history') + + local builtin = require 'telescope.builtin' + + vim.keymap.set('n', '<space>fd', builtin.find_files) + vim.keymap.set('n', '<space>fh', builtin.help_tags) + vim.keymap.set('n', '<space>fg', builtin.live_grep) + vim.keymap.set('n', '<space>/', builtin.current_buffer_fuzzy_find) + vim.keymap.set('n', '<space>gw', builtin.grep_string) + + vim.keymap.set('n', '<space>fa', function() + ---@diagnostic disable-next-line: param-type-mismatch + builtin.find_files { cwd = vim.fs.joinpath(vim.fn.stdpath 'data', 'lazy') } + end) + + vim.keymap.set('n', '<space>en', function() + builtin.find_files { cwd = vim.fn.stdpath 'config' } + end) + end, +} |
