diff options
Diffstat (limited to 'nvim/lua/config/plugins/fzf.lua')
| -rw-r--r-- | nvim/lua/config/plugins/fzf.lua | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/nvim/lua/config/plugins/fzf.lua b/nvim/lua/config/plugins/fzf.lua new file mode 100644 index 0000000..d50ca35 --- /dev/null +++ b/nvim/lua/config/plugins/fzf.lua @@ -0,0 +1,46 @@ +local file_edit_or_argadd = function(selected, opts) + if #selected > 1 then + FzfLua.actions.arg_add(selected, opts) + FzfLua.args() + else + return FzfLua.actions.file_edit(selected, opts) + end +end + +require('fzf-lua').setup({ + winopts = { + height = 1, + width = 0.7, + border = { ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ' }, + col = 1, -- right-aligned + border = 'none', + preview = { + wrap = true, + border = 'none', + scrollbar = false, + }, + }, + grep = { + hidden = true, -- show hidden files by default + }, + files = { + actions = { + ["enter"] = file_edit_or_argadd + } + }, +}) + +local opts = { silent = true } + +vim.keymap.set('n', '<leader>ff', ':FzfLua files<CR>', { silent = true, desc = 'Fzf: Files' }) +vim.keymap.set('n', '<leader>fr', ':FzfLua resume<CR>', { silent = true, desc = 'Fzf: Resume (After Alt+Esc)' }) +vim.keymap.set('n', '<leader>fg', ':FzfLua live_grep<CR>', { silent = true, desc = 'Fzf: Live Grep' }) +vim.keymap.set('n', '<leader>fG', ':FzfLua grep<CR>', { silent = true, desc = 'Fzf: Grep' }) +vim.keymap.set('n', '<leader>fs', ':FzfLua git_status<CR>', { silent = true, desc = 'Fzf: git status' }) +vim.keymap.set('n', '<leader>fls', ':FzfLua lsp_workspace_symbols<CR>', { silent = true, desc = 'Fzf: LSP Symbols' }) +vim.keymap.set('n', '<leader>flr', ':FzfLua lsp_references<CR>', { silent = true, desc = 'Fzf: LSP - References' }) +vim.keymap.set('n', '<leader>flf', ':FzfLua lsp_finder<CR>', { silent = true, desc = 'Fzf: LSP - Finder' }) +vim.keymap.set('n', '<leader>fb', ':FzfLua buffers<CR>', { silent = true, desc = 'Fzf: Buffers' }) +vim.keymap.set('n', '<leader>fk', ':FzfLua keymaps<CR>', { silent = true, desc = 'Fzf: Keymaps' }) +vim.keymap.set('n', '<leader>fa', ':FzfLua args<CR>', { silent = true, desc = 'Fzf: Args' }) +vim.keymap.set('n', '<leader>fq', ':FzfLua quickfix<CR>', { silent = true, desc = 'Fzf: Quickfix list' }) |
