fix(dashboard): truncate file names when too long. Fixes #183

This commit is contained in:
Folke Lemaitre 2024-12-01 19:56:43 +01:00
parent f4e31983a7
commit 4bdf7daece
No known key found for this signature in database
GPG key ID: 41F8B1FBACAE2040

View file

@ -116,6 +116,14 @@ local defaults = {
file = function(item, ctx)
local fname = vim.fn.fnamemodify(item.file, ":~")
fname = ctx.width and #fname > ctx.width and vim.fn.pathshorten(fname) or fname
if #fname > ctx.width then
local dir = vim.fn.fnamemodify(fname, ":h")
local file = vim.fn.fnamemodify(fname, ":t")
if dir and file then
file = file:sub(-(ctx.width - #dir - 2))
fname = dir .. "/…" .. file
end
end
local dir, file = fname:match("^(.*)/(.+)$")
return dir and { { dir .. "/", hl = "dir" }, { file, hl = "file" } } or { { fname, hl = "file" } }
end,