summaryrefslogtreecommitdiff
path: root/nvim/lua
diff options
context:
space:
mode:
authorSkladnayazebra <skladnayazebra@gmail.com>2026-02-08 20:23:02 +0100
committerSkladnayazebra <skladnayazebra@gmail.com>2026-02-08 20:23:02 +0100
commitcf2de0f9eefef9e0a99b034bfb64166f4a45490d (patch)
tree050610fab92453c30933d3452df35abb6e4a79de /nvim/lua
parentd52b4f5185e80469684bc599ddc6adff945f0273 (diff)
Better integrate fzf with arglist
Diffstat (limited to 'nvim/lua')
-rw-r--r--nvim/lua/config/fzf.lua16
1 files changed, 16 insertions, 0 deletions
diff --git a/nvim/lua/config/fzf.lua b/nvim/lua/config/fzf.lua
index 55e23de..b994c68 100644
--- a/nvim/lua/config/fzf.lua
+++ b/nvim/lua/config/fzf.lua
@@ -1,3 +1,12 @@
+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,
@@ -11,6 +20,11 @@ require('fzf-lua').setup({
grep = {
hidden = true, -- show hidden files by default
},
+ files = {
+ actions = {
+ ["enter"] = file_edit_or_argadd
+ }
+ },
})
local opts = { silent = true }
@@ -25,3 +39,5 @@ vim.keymap.set('n', '<leader>flr', ':FzfLua lsp_references<CR>', { silent = true
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' })