From ff349bc27ef08392c06c568d56972f27bde52222 Mon Sep 17 00:00:00 2001 From: "Yuval.D" Date: Thu, 26 Mar 2026 09:29:22 +0200 Subject: [PATCH] fix: sync mark filenames and refresh on buffer file rename --- lua/bento/init.lua | 8 ++++++++ lua/bento/ui.lua | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/lua/bento/init.lua b/lua/bento/init.lua index 75043dd..15b24a0 100644 --- a/lua/bento/init.lua +++ b/lua/bento/init.lua @@ -354,6 +354,14 @@ local function setup_autocmds() local augroup = vim.api.nvim_create_augroup("BentoRefresh", { clear = true }) + vim.api.nvim_create_autocmd("BufFilePost", { + group = augroup, + callback = function() + require("bento.ui").refresh_menu() + end, + desc = "Refresh bento menu on buffer file rename", + }) + vim.api.nvim_create_autocmd( { "BufAdd", "BufDelete", "BufWipeout", "BufEnter", "WinEnter" }, { diff --git a/lua/bento/ui.lua b/lua/bento/ui.lua index d331558..d88bdd1 100644 --- a/lua/bento/ui.lua +++ b/lua/bento/ui.lua @@ -182,6 +182,14 @@ local function update_marks() end end + -- Sync filenames for existing marks (handles file renames) + for _, mark in ipairs(marks) do + local current_name = vim.api.nvim_buf_get_name(mark.buf_id) + if current_name ~= "" and current_name ~= mark.filename then + mark.filename = current_name + end + end + -- Add new buffers for _, buf in pairs(vim.api.nvim_list_bufs()) do local bufname = vim.api.nvim_buf_get_name(buf)