vim/telescope: export trigger for mappings in other plugins
This commit is contained in:
parent
ae4f6217c8
commit
c1e60efa92
1 changed files with 24 additions and 20 deletions
|
@ -1,4 +1,20 @@
|
||||||
local config = function()
|
T = {
|
||||||
|
'nvim-telescope/telescope.nvim',
|
||||||
|
|
||||||
|
dependencies = {
|
||||||
|
'nvim-telescope/telescope-file-browser.nvim',
|
||||||
|
{
|
||||||
|
'nvim-telescope/telescope-fzf-native.nvim',
|
||||||
|
build = 'cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release ' ..
|
||||||
|
'&& cmake --build build --config Release ' ..
|
||||||
|
'&& cmake --install build --prefix build'
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
trigger = '<leader>f', -- my addition, not used by lazy.nvim
|
||||||
|
}
|
||||||
|
|
||||||
|
T.config = function()
|
||||||
local telescope = require 'telescope'
|
local telescope = require 'telescope'
|
||||||
local actions = require 'telescope.actions'
|
local actions = require 'telescope.actions'
|
||||||
local actions_layout = require 'telescope.actions.layout'
|
local actions_layout = require 'telescope.actions.layout'
|
||||||
|
@ -104,17 +120,17 @@ local config = function()
|
||||||
end,
|
end,
|
||||||
}
|
}
|
||||||
|
|
||||||
local map = function(leader, keymap)
|
local map = function(keymap)
|
||||||
for mode, list in pairs(keymap) do
|
for mode, list in pairs(keymap) do
|
||||||
for _, row in ipairs(list) do
|
for _, row in ipairs(list) do
|
||||||
local lhs, picker, title, desc = row[1], row[2], row[3], row[4]
|
local lhs, picker, title, desc = row[1], row[2], row[3], row[4]
|
||||||
local rhs = function() picker { prompt_title = ' ' .. title .. ' ' } end
|
local rhs = function() picker { prompt_title = ' ' .. title .. ' ' } end
|
||||||
vim.keymap.set(mode, leader .. lhs, rhs, { desc = ' ' .. desc })
|
vim.keymap.set(mode, T.trigger .. lhs, rhs, { desc = ' ' .. desc })
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
map('<leader>f', {
|
map {
|
||||||
-- ╭────╮ ╭──────╮ ╭────────────╮ ╭───────────────────╮
|
-- ╭────╮ ╭──────╮ ╭────────────╮ ╭───────────────────╮
|
||||||
-- │keys│ │picker│ │prompt title│ │mapping description│
|
-- │keys│ │picker│ │prompt title│ │mapping description│
|
||||||
-- ╰────╯ ╰──────╯ ╰────────────╯ ╰───────────────────╯
|
-- ╰────╯ ╰──────╯ ╰────────────╯ ╰───────────────────╯
|
||||||
|
@ -146,7 +162,8 @@ local config = function()
|
||||||
{ 'R', ts.registers , ' Registers' , '[R]registers' },
|
{ 'R', ts.registers , ' Registers' , '[R]registers' },
|
||||||
{ 's', ts.lsp_document_symbols , ' Document Symbols ' , 'lsp document [s]ymbols' },
|
{ 's', ts.lsp_document_symbols , ' Document Symbols ' , 'lsp document [s]ymbols' },
|
||||||
{ 'S', ts.lsp_workspace_symbols , ' Workspace Symbols ' , 'lsp workspace [S]ymbols' },
|
{ 'S', ts.lsp_workspace_symbols , ' Workspace Symbols ' , 'lsp workspace [S]ymbols' },
|
||||||
{ 't', ts.treesitter , ' Treesitter symbols' , '[t]reesitter Symbols' },
|
--'t' used in todo-comments
|
||||||
|
{ 'T', ts.treesitter , ' Treesitter symbols' , '[T]reesitter Symbols' },
|
||||||
-- u
|
-- u
|
||||||
-- v
|
-- v
|
||||||
{ 'w', my.selection , '' --[[dynamic]] , '[w]word under cursor' },
|
{ 'w', my.selection , '' --[[dynamic]] , '[w]word under cursor' },
|
||||||
|
@ -162,25 +179,12 @@ local config = function()
|
||||||
v = {
|
v = {
|
||||||
{ 's', my.selection , '' --[[dynamic]] , 'visual [s]election' },
|
{ 's', my.selection , '' --[[dynamic]] , 'visual [s]election' },
|
||||||
}
|
}
|
||||||
})
|
}
|
||||||
|
|
||||||
telescope.load_extension 'fzf'
|
telescope.load_extension 'fzf'
|
||||||
telescope.load_extension 'file_browser'
|
telescope.load_extension 'file_browser'
|
||||||
vim.keymap.set('n', '<leader>fB', '<cmd>Telescope file_browser<cr>', { desc = ' [f]ile [B]rowser' })
|
vim.keymap.set('n', '<leader>fB', '<cmd>Telescope file_browser<cr>', { desc = ' [f]ile [B]rowser' })
|
||||||
end
|
end
|
||||||
|
|
||||||
return {
|
return T
|
||||||
'nvim-telescope/telescope.nvim',
|
|
||||||
|
|
||||||
config = config,
|
|
||||||
dependencies = {
|
|
||||||
'nvim-telescope/telescope-file-browser.nvim',
|
|
||||||
{
|
|
||||||
'nvim-telescope/telescope-fzf-native.nvim',
|
|
||||||
build = 'cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release ' ..
|
|
||||||
'&& cmake --build build --config Release ' ..
|
|
||||||
'&& cmake --install build --prefix build'
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue