diff options
-rw-r--r-- | lua/functions.lua | 18 | ||||
-rw-r--r-- | lua/maps/find.lua | 2 |
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 }) |