From 6b4be1dc0cd4d5d5b8e8b56b510a75016e99746f Mon Sep 17 00:00:00 2001 From: Jie Liu Date: Sun, 8 Dec 2024 08:45:32 +0800 Subject: [PATCH] fix: view.width functions may return strings (#3020) * Fix get_size() function when size is a function return string * update view.width help --------- Co-authored-by: Alexander Courtis --- doc/nvim-tree-lua.txt | 8 ++++---- lua/nvim-tree/view.lua | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/doc/nvim-tree-lua.txt b/doc/nvim-tree-lua.txt index 07985f84..7ab41beb 100644 --- a/doc/nvim-tree-lua.txt +++ b/doc/nvim-tree-lua.txt @@ -800,22 +800,22 @@ Width of the window: can be a `%` string, a number representing columns, a function or a table. A table indicates that the view should be dynamically sized based on the longest line. - Type: `string | number | table | function()` returning a number + Type: `string | number | table | fun(): number|string` Default: `30` *nvim-tree.view.width.min* Minimum dynamic width. - Type: `string | number | function()` returning a number + Type: `string | number | fun(): number|string` Default: `30` *nvim-tree.view.width.max* Maximum dynamic width, -1 for unbounded. - Type: `string | number | function()` returning a number + Type: `string | number | fun(): number|string` Default: `-1` *nvim-tree.view.width.padding* Extra padding to the right. - Type: `number | function()` returning a number + Type: `number | fun(): number|string` Default: `1` *nvim-tree.view.float* diff --git a/lua/nvim-tree/view.lua b/lua/nvim-tree/view.lua index 8fd07fe1..21c4c630 100644 --- a/lua/nvim-tree/view.lua +++ b/lua/nvim-tree/view.lua @@ -119,7 +119,7 @@ local function get_size(size) if type(size) == "number" then return size elseif type(size) == "function" then - return size() + return get_size(size()) end local size_as_number = tonumber(size:sub(0, -2)) local percent_as_decimal = size_as_number / 100