about summary refs log tree commit diff
path: root/.config/nvim/lua/plugins/telescope.lua
blob: e76199445dc83310e3ee87981760b3f456302c76 (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
33
34
35
36
37
38
39
40
return {
  "nvim-telescope/telescope.nvim",
  dependencies = { "nvim-lua/plenary.nvim" },
  config = function()
    require("telescope").setup({
      defaults = {
        borderchars = { "─", "│", "─", "│", "┌", "┐", "┘", "└" },
      },
    })

    local tscope = require('telescope.builtin')
    vim.keymap.set("n", "<leader>ff", function()
      local cwd
      if vim.bo.filetype == "oil" then
        cwd = require("oil").get_current_dir()
      else
        cwd = vim.fn.expand("%:p:h")
      end
      tscope.find_files({ cwd = cwd })
    end, { desc = "Find File" })

    vim.keymap.set("n", "<leader>fp", function()
      tscope.find_files({
        cwd = vim.loop.cwd(),
      })
    end, { desc = "Find Project File" })
    vim.keymap.set('n', '<leader>bb', tscope.buffers,
      { desc = "Find Buffer" })
    vim.keymap.set('n', '<leader>fh', tscope.help_tags,
      { desc = "Find Help" })
    vim.keymap.set('n', '<leader>fg', tscope.live_grep,
      { desc = "Find by Grep" })
    vim.keymap.set('n', '<leader>fr', tscope.oldfiles,
      { desc = "Find Recent Files" })
    vim.keymap.set('n', '<leader>lw', tscope.diagnostics,
      { desc = "Search Diagnostics" })
    vim.keymap.set('n', '<leader>lg', tscope.lsp_references,
      { desc = "Search References" })
  end,
}