In my setup, I use neovim-session-manager to manage my session,When switching sessions, the buffer of buye becomes invalid.
The specific errors are shown below:
E5108: Error executing lua: vim/_editor.lua:0: nvim_exec2(): Vim:Error executing Lua callback: .../.local/share/AstroNvim/lazy/cybu.nvim/lua/cybu/init.lua:228: Invalid buffer id: 15
stack traceback:
[C]: in function 'nvim_buf_set_lines'
.../.local/share/AstroNvim/lazy/cybu.nvim/lua/cybu/init.lua:228: in function 'get_cybu_buf'
.../.local/share/AstroNvim/lazy/cybu.nvim/lua/cybu/init.lua:376: in function 'populate_state'
.../.local/share/AstroNvim/lazy/cybu.nvim/lua/cybu/init.lua:394: in function 'cycle'
...bo/.local/share/AstroNvim/lazy/cybu.nvim/plugin/cybu.lua:13: in function <...bo/.local/share/AstroNvim/lazy/cybu.nvim/plugin/cybu.lua:12>
[C]: in function 'nvim_exec2'
vim/_editor.lua: in function 'cmd'
/home/zibo/.config/astronvim/lua/user/lsp/mappings.lua:25: in function </home/zibo/.config/astronvim/lua/user/lsp/mappings.lua:23>
stack traceback:
[C]: in function 'nvim_exec2'
vim/_editor.lua: in function 'cmd'
/home/zibo/.config/astronvim/lua/user/lsp/mappings.lua:25: in function </home/zibo/.config/astronvim/lua/user/lsp/mappings.lua:23>
I found that these changes fixed the issue for me:
diff --git a/lua/cybu/init.lua b/lua/cybu/init.lua
index 79a25c2..7af13a3 100644
--- a/lua/cybu/init.lua
+++ b/lua/cybu/init.lua
@@ -208,7 +208,7 @@ end
cybu.get_cybu_buf = function()
local cybu_buf
- if not _state.cybu_buf then
+ if not _state.cybu_buf or not vim.api.nvim_buf_is_valid(_state.cybu_buf) then
cybu_buf = vim.api.nvim_create_buf(false, true)
vim.api.nvim_buf_set_option(cybu_buf, "filetype", "cybu")
vim.api.nvim_buf_set_option(cybu_buf, "buftype", "nofile")
In my setup, I use neovim-session-manager to manage my session,When switching sessions, the buffer of buye becomes invalid. The specific errors are shown below:
I found that these changes fixed the issue for me: