diff options
Diffstat (limited to '.config/nvim/lua/_telescope')
-rw-r--r-- | .config/nvim/lua/_telescope/init.lua | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/.config/nvim/lua/_telescope/init.lua b/.config/nvim/lua/_telescope/init.lua new file mode 100644 index 0000000..4dfa57f --- /dev/null +++ b/.config/nvim/lua/_telescope/init.lua @@ -0,0 +1,83 @@ +local actions = require('telescope.actions') +-- Global remapping +------------------------------ +-- '--color=never', +require('telescope').load_extension('media_files') +require('telescope').setup { + defaults = { + vimgrep_arguments = {'rg', '--no-heading', '--with-filename', '--line-number', '--column', '--smart-case'}, + prompt_position = "top", + prompt_prefix = " ", + selection_caret = " ", + entry_prefix = " ", + initial_mode = "insert", + selection_strategy = "reset", + sorting_strategy = "descending", + layout_strategy = "horizontal", + layout_defaults = {horizontal = {mirror = false}, vertical = {mirror = false}}, + file_sorter = require'telescope.sorters'.get_fuzzy_file, + file_ignore_patterns = {}, + generic_sorter = require'telescope.sorters'.get_generic_fuzzy_sorter, + shorten_path = true, + winblend = 0, + width = 0.75, + preview_cutoff = 120, + results_height = 1, + results_width = 0.8, + border = {}, + borderchars = { + { '─', '│', '─', '│', '┌', '┐', '┘', '└'}, + prompt = {"─", "│", " ", "│", '┌', '┐', "│", "│"}, + results = {"─", "│", "─", "│", "├", "┤", "┘", "└"}, + preview = { '─', '│', '─', '│', '┌', '┐', '┘', '└'}, + }, + color_devicons = true, + use_less = true, + set_env = {['COLORTERM'] = 'truecolor'}, -- default = nil, + file_previewer = require'telescope.previewers'.vim_buffer_cat.new, + grep_previewer = require'telescope.previewers'.vim_buffer_vimgrep.new, + qflist_previewer = require'telescope.previewers'.vim_buffer_qflist.new, + + -- Developer configurations: Not meant for general override + buffer_previewer_maker = require'telescope.previewers'.buffer_previewer_maker, + mappings = { + i = { + ["<C-j>"] = actions.move_selection_next, + ["<C-k>"] = actions.move_selection_previous, + -- To disable a keymap, put [map] = false + -- So, to not map "<C-n>", just put + -- ["<c-x>"] = false, + + -- Otherwise, just set the mapping to the function that you want it to be. + -- ["<C-i>"] = actions.select_horizontal, + + -- Add up multiple actions + ["<CR>"] = actions.select_default + actions.center + + -- You can perform as many actions in a row as you like + -- ["<CR>"] = actions.select_default + actions.center + my_cool_custom_action, + }, + n = { + ["<C-j>"] = actions.move_selection_next, + ["<C-k>"] = actions.move_selection_previous + -- ["<esc>"] = actions.close, + -- ["<C-i>"] = my_cool_custom_action, + } + } + }, + require'telescope'.setup { + extensions = { + media_files = { + -- filetypes whitelist + -- defaults to {"png", "jpg", "mp4", "webm", "pdf"} + filetypes = {"png", "webp", "jpg", "jpeg"}, + find_cmd = "rg" -- find command (defaults to `fd`) + } + } + } +} + +vim.api.nvim_set_keymap('n', '<leader>ff', '<cmd>lua require("telescope.builtin").find_files()<cr>', { noremap = true, silent = true }) +vim.api.nvim_set_keymap('n', '<leader>fg', '<cmd>lua require("telescope.builtin").live_grep()<cr>', { noremap = true, silent = true }) +vim.api.nvim_set_keymap('n', '<leader>fb', '<cmd>lua require("telescope.builtin").buffers()<cr>', { noremap = true, silent = true }) +vim.api.nvim_set_keymap('n', '<leader>fh', '<cmd>lua require("telescope.builtin").help_tags()<cr>', { noremap = true, silent = true }) |