170 lines
2.7 KiB
Lua
170 lines
2.7 KiB
Lua
-- fzf-lua.nvim
|
|
--- Configurable fuzzy finder w/UI.
|
|
--- See <https://github.com/ibhagwan/fzf-lua> for commands.
|
|
|
|
-- REQ[sys]: fd-find
|
|
-- REQ[sys]: ripgrep
|
|
-- REQ[sys]: bat
|
|
-- REQ[sys]: git-delta
|
|
|
|
return {
|
|
'ibhagwan/fzf-lua',
|
|
commit = 'e3fefd97875827e47dc4bbf1074ee464b2d8e6a8',
|
|
lazy = true,
|
|
|
|
cmd = {
|
|
'Telescope',
|
|
},
|
|
|
|
keys = {
|
|
-- Accessibility
|
|
{
|
|
'<leader>s?',
|
|
function()
|
|
require('fzf-lua').builtin()
|
|
end,
|
|
'n',
|
|
desc = '[S]earch Search-Commands',
|
|
},
|
|
{
|
|
'<leader>sh',
|
|
function()
|
|
require('fzf-lua').helptags()
|
|
end,
|
|
'n',
|
|
desc = '[S]earch [H]elp Tags',
|
|
},
|
|
{
|
|
'<leader>sk',
|
|
function()
|
|
require('fzf-lua').keymaps()
|
|
end,
|
|
'n',
|
|
desc = '[S]earch [K]eymaps',
|
|
},
|
|
{
|
|
'<leader>sc',
|
|
function()
|
|
require('fzf-lua').commands()
|
|
end,
|
|
'n',
|
|
desc = '[S]earch [C]ommands',
|
|
},
|
|
{
|
|
'<leader>sm',
|
|
function()
|
|
require('fzf-lua').manpages()
|
|
end,
|
|
'n',
|
|
desc = '[S]earch [M]anpages',
|
|
},
|
|
|
|
-- Grep
|
|
{
|
|
'<leader>sg',
|
|
function()
|
|
require('fzf-lua').live_grep()
|
|
end,
|
|
'n',
|
|
desc = '[S]earch w/[G]rep',
|
|
},
|
|
|
|
-- Buffer / File Search
|
|
{
|
|
'<leader>sb',
|
|
function()
|
|
require('fzf-lua').buffers()
|
|
end,
|
|
'n',
|
|
desc = '[S]earch [B]uffers',
|
|
},
|
|
{
|
|
'<leader>sf',
|
|
function()
|
|
require('fzf-lua').files()
|
|
end,
|
|
'n',
|
|
desc = '[S]earch [F]iles',
|
|
},
|
|
|
|
-- Git: "VCS" -> "v"
|
|
{
|
|
'<leader>sgc',
|
|
function()
|
|
require('fzf-lua').git_commits()
|
|
end,
|
|
'n',
|
|
desc = '[S]earch Git [C]ommits',
|
|
},
|
|
{
|
|
'<leader>sgs',
|
|
function()
|
|
require('fzf-lua').git_status()
|
|
end,
|
|
'n',
|
|
desc = '[S]earch Git [S]tatus',
|
|
},
|
|
|
|
-- Debug
|
|
{
|
|
'<leader>sd',
|
|
function()
|
|
require('fzf-lua').diagnostics_document()
|
|
end,
|
|
'n',
|
|
desc = '[S]earch [D]iagnostics',
|
|
},
|
|
|
|
-- Vim
|
|
{
|
|
"<leader>s'",
|
|
function()
|
|
require('fzf-lua').registers()
|
|
end,
|
|
'n',
|
|
desc = '[S]earch Vim Registers',
|
|
},
|
|
},
|
|
|
|
opts = {
|
|
fzf_bin = 'sk',
|
|
keymap = {
|
|
builtin = {
|
|
['<c-b>'] = 'preview-page-up',
|
|
['<c-f>'] = 'preview-page-down',
|
|
},
|
|
fzf = {
|
|
['ctrl-u'] = 'half-page-up',
|
|
['ctrl-d'] = 'half-page-down',
|
|
['ctrl-b'] = 'preview-page-up',
|
|
['ctrl-f'] = 'preview-page-down',
|
|
},
|
|
},
|
|
previewers = {
|
|
builtin = {
|
|
extensions = {
|
|
['png'] = { 'chafa', '{file}' },
|
|
['jpg'] = { 'chafa', '{file}' },
|
|
['jpeg'] = { 'chafa', '{file}' },
|
|
['gif'] = { 'chafa', '{file}' },
|
|
['svg'] = { 'chafa', '{file}' },
|
|
['webp'] = { 'chafa', '{file}' },
|
|
},
|
|
},
|
|
},
|
|
winopts = {
|
|
width = 0.8,
|
|
height = 0.8,
|
|
row = 0.5,
|
|
col = 0.5,
|
|
preview = {
|
|
scrollchars = { '┃', '' },
|
|
},
|
|
},
|
|
fzf_colors = true,
|
|
fzf_opts = {
|
|
['--no-scrollbar'] = true,
|
|
},
|
|
},
|
|
}
|