aboutsummaryrefslogtreecommitdiffstats
path: root/neovim/.config/nvim/lua/plugins/fuzzyfinder.lua
blob: 2ed9970ee620265ccc2c799b593baa5078340dbe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
return {
  "nvim-telescope/telescope.nvim",
  -- Not left to lazy-load off `keys`: telescope-ui-select's vim.ui.select()
  -- override (below) needs to be installed from startup, otherwise
  -- overseer's <leader>rr / nvim-dap-python's <leader>dc pickers fall back
  -- to Neovim's default list until something (e.g. <C-p>) happens to
  -- trigger telescope's own lazy-load first.
  lazy = false,
  dependencies = {
    "nvim-lua/plenary.nvim",
    "nvim-telescope/telescope-ui-select.nvim",
  },
  keys = {
    { "<C-p>", "<cmd>Telescope find_files<cr>" },
    { "<leader>fg", "<cmd>Telescope live_grep<cr>" },
    { "<leader>fb", "<cmd>Telescope buffers<cr>" },
  },
  config = function()
    -- telescope-ui-select makes vim.ui.select() - overseer's <leader>rr
    -- template picker, nvim-dap-python's launch-config picker, LSP code
    -- actions, etc. - a scrollable/fuzzy-searchable Telescope window
    -- instead of Neovim's default numbered-list-in-the-cmdline prompt.
    require("telescope").setup({
      extensions = {
        ["ui-select"] = {
          require("telescope.themes").get_dropdown({}),
        },
      },
    })
    require("telescope").load_extension("ui-select")
  end,
}