diff --git a/yazi-plugin/preset/components/linemode.lua b/yazi-plugin/preset/components/linemode.lua index 2a02a8c2..79a0c83e 100644 --- a/yazi-plugin/preset/components/linemode.lua +++ b/yazi-plugin/preset/components/linemode.lua @@ -14,14 +14,10 @@ function Linemode:solo() end if not self[mode] then - return ui.Line(" " .. mode .. " ") + return ui.Line(mode) end - return ui.Line { - ui.Span(" "), - self[mode](self), - ui.Span(" "), - } + return ui.Line { self[mode](self) } end function Linemode:size() @@ -63,6 +59,9 @@ function Linemode:render() local lines = {} for _, c in ipairs(self._children) do lines[#lines + 1] = (type(c[1]) == "string" and self[c[1]] or c[1])(self) + if lines[#lines] and lines[#lines]:width() > 0 then + lines[#lines + 1] = ui.Line { ui.Span(" ") } + end end return ui.Line(lines) end