summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lua/functions.lua18
-rw-r--r--lua/maps/find.lua2
2 files changed, 19 insertions, 1 deletions
diff --git a/lua/functions.lua b/lua/functions.lua
index 8e89c2f..07f8868 100644
--- a/lua/functions.lua
+++ b/lua/functions.lua
@@ -98,6 +98,24 @@ function _G.toggle_nerdtree()
)
end
+function _G.search_buffers()
+ local spec = vim.fn["fzf#vim#with_preview"]({ placeholder = "{1}" })
+
+ local nerdtree_buffer = vim.api.nvim_win_get_buf(get_nerdtree_win_id())
+
+ local buffers = table.filter(
+ vim.api.nvim_list_bufs(),
+ function(buffer)
+ return
+ vim.api.nvim_buf_is_loaded(buffer) and
+ buffer ~= nerdtree_buffer and
+ buffer ~= vim.g.term_buf
+ end
+ )
+
+ vim.fn["fzf#vim#buffers"]("", buffers, spec, 0)
+end
+
function _G.get_current_file()
return vim.fn.expand("%")
end
diff --git a/lua/maps/find.lua b/lua/maps/find.lua
index 5d4bfbe..dec634a 100644
--- a/lua/maps/find.lua
+++ b/lua/maps/find.lua
@@ -1,6 +1,6 @@
vim.api.nvim_set_keymap("n", "<leader>p", ":Files<CR>", { silent = true, noremap = true })
-vim.api.nvim_set_keymap("n", "<leader>b", ":Buffers<CR>", { silent = true, noremap = true })
+vim.api.nvim_set_keymap("n", "<leader>b", ":lua search_buffers()<CR>", { silent = true, noremap = true })
vim.api.nvim_set_keymap("n", "<leader>c", ":Commits<CR>", { silent = true, noremap = true })