diff --git a/doc/nvim-tree-lua.txt b/doc/nvim-tree-lua.txt index 2dac973970a..91f30bd15e1 100644 --- a/doc/nvim-tree-lua.txt +++ b/doc/nvim-tree-lua.txt @@ -1639,6 +1639,12 @@ e.g. handler for node renamed: > handler parameters: ~ {folder_name} `{string}` Absolute path to the removed folder. +- Event.TreeAttachedPost + Invoked after the tree's buffer has been created and mappings + have been applied: |nvim-tree-mappings| or |nvim-tree.on_attach| + handler parameters: ~ + {buf} `{number} `API buffer handle (buffer number) + ============================================================================== 9. BOOKMARKS *nvim-tree-bookmarks* diff --git a/lua/nvim-tree/events.lua b/lua/nvim-tree/events.lua index 0fbe8158797..63a9f80b654 100644 --- a/lua/nvim-tree/events.lua +++ b/lua/nvim-tree/events.lua @@ -15,6 +15,7 @@ M.Event = { FolderCreated = "FolderCreated", FolderRemoved = "FolderRemoved", Resize = "Resize", + TreeAttachedPost = "TreeAttachedPost", } local function get_handlers(event_name) @@ -86,6 +87,11 @@ function M._dispatch_on_tree_resize(size) dispatch(M.Event.Resize, size) end +--@private +function M._dispatch_tree_attached_post(buf) + dispatch(M.Event.TreeAttachedPost, buf) +end + --- @deprecated function M.on_nvim_tree_ready(handler) M.subscribe(M.Event.Ready, handler) diff --git a/lua/nvim-tree/view.lua b/lua/nvim-tree/view.lua index f9e1ad1cf3b..4da5ad65ca5 100644 --- a/lua/nvim-tree/view.lua +++ b/lua/nvim-tree/view.lua @@ -95,6 +95,7 @@ local function create_buffer(bufnr) else require("nvim-tree.actions").apply_mappings(M.get_bufnr()) end + events._dispatch_tree_attached_post(M.get_bufnr()) end local function get_size()