From 6f943112a9998d504a5660754f400786e79f80b2 Mon Sep 17 00:00:00 2001 From: Junegunn Choi Date: Sun, 12 Jan 2025 14:58:55 +0900 Subject: [PATCH] Align header with the list --- src/terminal.go | 14 ++++++++++++-- test/test_go.rb | 24 ++++++++++++------------ 2 files changed, 24 insertions(+), 14 deletions(-) diff --git a/src/terminal.go b/src/terminal.go index 853adb8..1ca1c80 100644 --- a/src/terminal.go +++ b/src/terminal.go @@ -2391,9 +2391,19 @@ func (t *Terminal) printHeaderImpl() { } // Wrapping is not supported for header wrap := t.wrap + + // Align header with the list + // fzf --header-lines 3 --style full --no-list-border + // fzf --header-lines 3 --style full --no-header-border + // fzf --header-lines 3 --style full --no-header-border --no-input-border indentSize := t.pointerLen + t.markerLen - if t.headerBorderShape.HasLeft() && !t.listBorderShape.HasLeft() { - indentSize = util.Max(0, indentSize-(1+t.borderWidth)) + if t.headerWindow != nil { + if t.listBorderShape.HasLeft() { + indentSize += 1 + t.borderWidth + } + if t.headerBorderShape.HasLeft() { + indentSize -= 1 + t.borderWidth + } } indent := strings.Repeat(" ", indentSize) t.wrap = false diff --git a/test/test_go.rb b/test/test_go.rb index edefebd..db2d8f1 100755 --- a/test/test_go.rb +++ b/test/test_go.rb @@ -3513,9 +3513,9 @@ class TestGoFZF < TestBase │ ║ 11 │ ║ > 10 │ ╚LIST══════ - │ 3 - │ 2 - │ 1 + │ 3 + │ 2 + │ 1 │ ┏INPUT━━━━━ │ ┃ 19/97 │ ┃ > 1 @@ -3529,9 +3529,9 @@ class TestGoFZF < TestBase │ ║ 11 │ ║ > 10 │ ╚ list ════ - │ 3 - │ 2 - │ 1 + │ 3 + │ 2 + │ 1 │ ┏ input ━━━ │ ┃ 19/97 │ ┃ > 1 @@ -3556,9 +3556,9 @@ class TestGoFZF < TestBase │ ┃ 19/97 │ ┃ > 1 │ ┗━━━━━━━━━━ - │ 3 - │ 2 - │ 1 + │ 3 + │ 2 + │ 1 │ ╰────────────── BLOCK @@ -3572,9 +3572,9 @@ class TestGoFZF < TestBase │ ┃ 19/97 │ ┃ > 1 │ ┗━━━━━━━━━━ - │ 3 - │ 2 - │ 1 + │ 3 + │ 2 + │ 1 │ ╰────────────── BLOCK