Files
yadm/.config/nvim/lua/plugins/telescope.lua
2024-03-29 09:25:49 +01:00

60 lines
2.7 KiB
Lua

return {
'nvim-telescope/telescope.nvim',
dependencies = {
'debugloop/telescope-undo.nvim',
'molecule-man/telescope-menufacture',
'xiyaowong/telescope-emoji.nvim',
},
event = 'VeryLazy',
--cmd = ":Telescope",
config = function()
-- require('telescope').load_extension('ultisnips')
require('telescope').setup {
extensions = {
menufacture = {
mappings = {
main_menu = { [{'i', 'n'}] = '<C-o>' }
}
},
emoji = {
action = function(emoji)
-- argument emoji is a table.
-- {name="", value="", cagegory="", description=""}
vim.fn.setreg("*", emoji.value)
print([[Press p or "*p to paste this emoji]] .. emoji.value)
-- insert emoji when picked
vim.api.nvim_put({ emoji.value }, 'c', false, true)
end,
}
}
}
require('telescope').load_extension('undo')
require('telescope').load_extension('menufacture')
require("telescope").load_extension("emoji")
local def = { noremap = true, silent = true }
local map = vim.keymap.set
map('n', '<leader>r', '<cmd>lua require("telescope.builtin").resume()<cr>', def)
map('n', '<leader>f', '<cmd>lua require("telescope").extensions.menufacture.find_files()<cr>', def)
map('n', '<leader>a', '<cmd>lua require("telescope").extensions.menufacture.grep_string()<cr>', def)
map('n', '<leader>s', '<cmd>lua require("telescope").extensions.menufacture.live_grep()<cr>', def)
map('n', '<leader>b', '<cmd>lua require("telescope.builtin").buffers()<cr>', def)
-- map('n', '<leader>fh', '<cmd>lua require('telescope.builtin').help_tags()<cr>, def)
map('n', '<leader>tc', '<cmd>lua require("telescope.builtin").commands()<cr>', def)
map('n', '<leader>t:', '<cmd>lua require("telescope.builtin").command_history()<cr>', def)
map('n', '<leader>t/', '<cmd>lua require("telescope.builtin").search_history()<cr>', def)
map('n', '<leader>tr', '<cmd>lua require("telescope.builtin").registers()<cr>', def)
-- Neovim lsp pickers
map('n', 'gr', '<cmd>lua require("telescope.builtin").lsp_references()<cr>', def)
map('n', 'gd', '<cmd>lua require("telescope.builtin").lsp_definitions()<cr>', def)
-- git pickers
-- map('n', '<leader>gc', '<cmd>lua require("telescope.builtin").git_commits()<cr>', def)
-- map('n', '<leader>gC', '<cmd>lua require("telescope.builtin").git_bcommits()<cr>', def)
-- map('n', '<leader>gb', '<cmd>lua require("telescope.builtin").git_branches()<cr>', def)
-- other
-- map('n', '<leader>s', '<cmd>lua require('telescope').extensions.ultisnips.ultisnips()<cr>, def)
map('n', '<leader>u', '<cmd>lua require("telescope").extensions.undo.undo()<cr>', def)
end
}