return { 'ibhagwan/fzf-lua', dependencies = { 'nvim-tree/nvim-web-devicons', }, config = function() local key = vim.keymap local fzf = require('fzf-lua') fzf.setup { 'telescope', winopts = { preview = { layout = 'vertical', vertical = 'down:60%' }, width = 0.95 } } local search_nvim_conf = function() fzf.files { cwd = vim.fn.stdpath 'config' } end key.set('n', '', fzf.buffers, { desc = 'search buffers' }) -- key.set('n', 'sf', fzf.files, { desc = '[s]earch [f]iles' }) key.set('n', 'sl', fzf.blines, { desc = '[s]earch buffer [l]ines' }) key.set('n', 'sh', fzf.helptags, { desc = '[s]earch [h]elp' }) key.set('n', 'sk', fzf.keymaps, { desc = '[s]earch [k]eymaps' }) key.set('n', 'sn', search_nvim_conf, { desc = '[s]earch [n]vim config files' }) key.set('n', 'ss', fzf.builtin, { desc = '[s]earch [s]earchables' }) key.set('n', 'sf', fzf.files, { desc = '[s]earch [f]iles' }) key.set('n', 'pf', fzf.files, { desc = '[p]roject [f]iles' }) key.set('n', 'pg', fzf.live_grep_native, { desc = '[p]roject [g]rep' }) key.set('n', 'gc', fzf.git_commits, { desc = '[g]it [c]ommits' }) key.set('n', 'gb', fzf.git_branches, { desc = '[g]it [b]ranches' }) key.set('n', 'gt', fzf.git_status, { desc = '[g]it [s]tatus' }) key.set('n', 'ld', fzf.lsp_workspace_diagnostics, { desc = '[L]SP [d]iagnostics' }) key.set('n', 'ls', fzf.lsp_document_symbols, { desc = '[L]SP [s]ymbols' }) end }