From a5d29646e593d52e952183021d5902e2a1ebc583 Mon Sep 17 00:00:00 2001 From: Folke Lemaitre Date: Mon, 20 Oct 2025 23:15:29 +0200 Subject: [PATCH] fix(picker.format): correcter max_width for truncpath --- lua/snacks/picker/core/list.lua | 4 ++-- lua/snacks/picker/format.lua | 6 +++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/lua/snacks/picker/core/list.lua b/lua/snacks/picker/core/list.lua index 281ad5d6..ffc3515c 100644 --- a/lua/snacks/picker/core/list.lua +++ b/lua/snacks/picker/core/list.lua @@ -480,8 +480,8 @@ function M:format(item) local ctx = { picker = self.picker, item = item, - offset = vim.api.nvim_strwidth(text), - max_width = vim.api.nvim_win_get_width(self.win.win) - 5, + offset = 0, + max_width = vim.api.nvim_win_get_width(self.win.win), } line = Snacks.picker.highlight.resolve(line, ctx) diff --git a/lua/snacks/picker/format.lua b/lua/snacks/picker/format.lua index d8d742ea..6984a5a4 100644 --- a/lua/snacks/picker/format.lua +++ b/lua/snacks/picker/format.lua @@ -81,7 +81,11 @@ function M._filename(ctx) end local truncate = picker.opts.formatters.file.truncate - path = Snacks.picker.util.truncpath(path, ctx.max_width, { cwd = picker:cwd(), kind = truncate }) + path = Snacks.picker.util.truncpath( + path, + ctx.max_width - Snacks.picker.highlight.offset(ret), + { cwd = picker:cwd(), kind = truncate } + ) local base_hl = item.dir and "SnacksPickerDirectory" or "SnacksPickerFile" local function is(prop)