diff --git a/lua/nvim-tree/explorer/view.lua b/lua/nvim-tree/explorer/view.lua index 15129658..41512607 100644 --- a/lua/nvim-tree/explorer/view.lua +++ b/lua/nvim-tree/explorer/view.lua @@ -87,6 +87,7 @@ function View:log_event(data, bufnr) vim.api.nvim_get_current_tabpage() = %s\ vim.api.nvim_get_current_win() = %s\ self.bufnr_by_tabid = %s\ + globals.BUFNR_BY_TABID = %s\ globals.WINID_BY_TABID = %s\ vim.fn.win_findbuf(bufnr) = %s\ data = %s\ @@ -96,6 +97,7 @@ function View:log_event(data, bufnr) vim.api.nvim_get_current_tabpage(), vim.api.nvim_get_current_win(), vim.inspect(self.bufnr_by_tabid, { newline = "" }), + vim.inspect(globals.BUFNR_BY_TABID, { newline = "" }), vim.inspect(globals.WINID_BY_TABID, { newline = "" }), vim.inspect(vim.fn.win_findbuf(bufnr), { newline = "" }), vim.inspect(data, { newline = "" }), @@ -177,7 +179,7 @@ end ---@param bufnr integer ---@return boolean function View:matches_bufnr(bufnr) - for _, b in pairs(self.bufnr_by_tabid) do + for _, b in pairs(globals.BUFNR_BY_TABID) do if b == bufnr then return true end @@ -206,6 +208,8 @@ function View:create_buffer(bufnr) self.bufnr_by_tabid[tabid] = bufnr + globals.BUFNR_BY_TABID[tabid] = bufnr + vim.api.nvim_buf_set_name(bufnr, "NvimTree_" .. tabid) for _, option in ipairs(BUFFER_OPTIONS) do @@ -540,14 +544,14 @@ end function View:abandon_current_window() local tab = vim.api.nvim_get_current_tabpage() - self.bufnr_by_tabid[tab] = nil + globals.BUFNR_BY_TABID[tab] = nil globals.WINID_BY_TABID[tab] = nil end function View:abandon_all_windows() for tab, _ in pairs(vim.api.nvim_list_tabpages()) do - self.bufnr_by_tabid[tab] = nil + globals.BUFNR_BY_TABID[tab] = nil globals.WINID_BY_TABID[tab] = nil end end @@ -624,7 +628,7 @@ end ---@param tabid number|nil (optional) the number of the chosen tabpage. Defaults to current tabpage. ---@return integer? winid function View:winid(tabid) - local bufnr = self.bufnr_by_tabid[tabid] + local bufnr = globals.BUFNR_BY_TABID[tabid] if bufnr then for _, winid in pairs(vim.api.nvim_tabpage_list_wins(tabid or 0)) do @@ -649,7 +653,7 @@ end function View:get_bufnr() local tab = vim.api.nvim_get_current_tabpage() - return self.bufnr_by_tabid[tab] + return globals.BUFNR_BY_TABID[tab] end function View:prevent_buffer_override() diff --git a/lua/nvim-tree/globals.lua b/lua/nvim-tree/globals.lua index 765f3209..66211260 100644 --- a/lua/nvim-tree/globals.lua +++ b/lua/nvim-tree/globals.lua @@ -3,6 +3,7 @@ local M = { -- from View WINID_BY_TABID = {}, + BUFNR_BY_TABID = {}, CURSORS = {}, }