@@ -17,10 +17,11 @@ import (
1717)
1818
1919const (
20− headerDiag = "╱"
21− minHeaderDiags = 3
22− leftPadding = 1
23− rightPadding = 1
20+ headerDiag = "╱"
21+ minHeaderDiags = 3
22+ leftPadding = 1
23+ rightPadding = 1
24+ diagToDetailsSpacing = 1 // space between diagonal pattern and details section
2425)
2526
2627type header struct {
@@ -73,7 +74,7 @@ func (h *header) drawHeader(
7374 var b strings.Builder
7475 b.WriteString(h.compactLogo)
7576
76− availDetailWidth := width - leftPadding - rightPadding - lipgloss.Width(b.String()) - minHeaderDiags
77+ availDetailWidth := width - leftPadding - rightPadding - lipgloss.Width(b.String()) - minHeaderDiags - diagToDetailsSpacing
7778 details := renderHeaderDetails(
7879 h.com,
7980 session,
@@ -86,7 +87,8 @@ func (h *header) drawHeader(
8687 lipgloss.Width(b.String()) -
8788 lipgloss.Width(details) -
8889 leftPadding -
89− rightPadding
90+ rightPadding -
91+ diagToDetailsSpacing
9092
9193 if remainingWidth > 0 {
9294 b.WriteString(t.Header.Diagonals.Render(
@@ -143,8 +145,8 @@ func renderHeaderDetails(
143145 const dirTrimLimit = 4
144146 cfg := com.Config()
145147 cwd := fsext.DirTrim(fsext.PrettyPath(cfg.WorkingDir()), dirTrimLimit)
146− cwd = ansi.Truncate(cwd, max(0, availWidth-lipgloss.Width(metadata)), "…")
147148 cwd = t.Header.WorkingDir.Render(cwd)
148149
149− return cwd + metadata
150+ result := cwd + metadata
151+ return ansi.Truncate(result, max(0, availWidth), "…")
150152}