From 94f160d1bda6c8a62caad92a1abd2c2582f2c9be Mon Sep 17 00:00:00 2001 From: christianchiarulli Date: Tue, 14 Dec 2021 17:52:10 -0500 Subject: [PATCH] add telescope --- init.lua | 1 + lua/user/plugins.lua | 3 ++ lua/user/telescope.lua | 96 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 100 insertions(+) create mode 100644 lua/user/telescope.lua diff --git a/init.lua b/init.lua index 8a515b8..1b3f3e8 100644 --- a/init.lua +++ b/init.lua @@ -4,3 +4,4 @@ require "user.plugins" require "user.colorscheme" require "user.cmp" require "user.lsp" +require "user.telescope" diff --git a/lua/user/plugins.lua b/lua/user/plugins.lua index 45141e2..c8a32cb 100644 --- a/lua/user/plugins.lua +++ b/lua/user/plugins.lua @@ -66,6 +66,9 @@ return packer.startup(function(use) use "williamboman/nvim-lsp-installer" -- simple to use language server installer use "tamago324/nlsp-settings.nvim" -- language server settings defined in json for + -- Telescope + use "nvim-telescope/telescope.nvim" + -- Automatically set up your configuration after cloning packer.nvim -- Put this at the end after all plugins if PACKER_BOOTSTRAP then diff --git a/lua/user/telescope.lua b/lua/user/telescope.lua new file mode 100644 index 0000000..0706b51 --- /dev/null +++ b/lua/user/telescope.lua @@ -0,0 +1,96 @@ +local status_ok, telescope = pcall(require, "telescope") +if not status_ok then + return +end + +local actions = require "telescope.actions" + +telescope.setup { + defaults = { + + prompt_prefix = " ", + selection_caret = " ", + path_display = { "smart" }, + + mappings = { + i = { + [""] = actions.cycle_history_next, + [""] = actions.cycle_history_prev, + + [""] = actions.move_selection_next, + [""] = actions.move_selection_previous, + + [""] = actions.close, + + [""] = actions.move_selection_next, + [""] = actions.move_selection_previous, + + [""] = actions.select_default, + [""] = actions.select_horizontal, + [""] = actions.select_vertical, + [""] = actions.select_tab, + + [""] = actions.preview_scrolling_up, + [""] = actions.preview_scrolling_down, + + [""] = actions.results_scrolling_up, + [""] = actions.results_scrolling_down, + + [""] = actions.toggle_selection + actions.move_selection_worse, + [""] = actions.toggle_selection + actions.move_selection_better, + [""] = actions.send_to_qflist + actions.open_qflist, + [""] = actions.send_selected_to_qflist + actions.open_qflist, + [""] = actions.complete_tag, + [""] = actions.which_key, -- keys from pressing + }, + + n = { + [""] = actions.close, + [""] = actions.select_default, + [""] = actions.select_horizontal, + [""] = actions.select_vertical, + [""] = actions.select_tab, + + [""] = actions.toggle_selection + actions.move_selection_worse, + [""] = actions.toggle_selection + actions.move_selection_better, + [""] = actions.send_to_qflist + actions.open_qflist, + [""] = actions.send_selected_to_qflist + actions.open_qflist, + + ["j"] = actions.move_selection_next, + ["k"] = actions.move_selection_previous, + ["H"] = actions.move_to_top, + ["M"] = actions.move_to_middle, + ["L"] = actions.move_to_bottom, + + [""] = actions.move_selection_next, + [""] = actions.move_selection_previous, + ["gg"] = actions.move_to_top, + ["G"] = actions.move_to_bottom, + + [""] = actions.preview_scrolling_up, + [""] = actions.preview_scrolling_down, + + [""] = actions.results_scrolling_up, + [""] = actions.results_scrolling_down, + + ["?"] = actions.which_key, + }, + }, + }, + pickers = { + -- Default configuration for builtin pickers goes here: + -- picker_name = { + -- picker_config_key = value, + -- ... + -- } + -- Now the picker_config_key will be applied every time you call this + -- builtin picker + }, + extensions = { + -- Your extension configuration goes here: + -- extension_name = { + -- extension_config_key = value, + -- } + -- please take a look at the readme of the extension you want to configure + }, +}