From 9c5a4bba1df91e7ba6bc77eb44da6eee9dc1c0ef Mon Sep 17 00:00:00 2001 From: cpojer Date: Mon, 9 Mar 2026 11:10:24 +0900 Subject: [PATCH] fix: Add extra newline between "Select a task" and the tasks to align with Vite+. --- crates/vite_select/src/interactive.rs | 5 ++++- .../fixtures/task-list/snapshots/vp run in script.snap | 2 +- .../snapshots/interactive long command truncated.snap | 5 +++++ .../interactive enter with no results does nothing.snap | 3 +++ .../snapshots/interactive escape clears query.snap | 3 +++ .../task-select/snapshots/interactive scroll long list.snap | 3 +++ .../snapshots/interactive search other package task.snap | 2 ++ .../interactive search preserves rating within package.snap | 2 ++ .../snapshots/interactive search then select.snap | 2 ++ .../interactive search with hash skips reorder.snap | 2 ++ .../snapshots/interactive select task from lib.snap | 1 + .../task-select/snapshots/interactive select task.snap | 2 ++ .../task-select/snapshots/interactive select with typo.snap | 1 + .../snapshots/verbose with typo enters selector.snap | 1 + 14 files changed, 32 insertions(+), 2 deletions(-) diff --git a/crates/vite_select/src/interactive.rs b/crates/vite_select/src/interactive.rs index 1c063706..c5022d30 100644 --- a/crates/vite_select/src/interactive.rs +++ b/crates/vite_select/src/interactive.rs @@ -160,7 +160,8 @@ pub fn render_items(writer: &mut impl Write, params: &RenderParams<'_>) -> anyho "Select a task (\u{2191}/\u{2193}, Enter to run, Esc to clear): {q}{line_ending}", )?; } - lines += 1; + write!(writer, "{line_ending}")?; + lines += 2; } // Items @@ -519,9 +520,11 @@ mod tests { let output = render_interactive_to_string(&items, "", 80); let mut lines = output.lines(); let prompt = lines.next().unwrap(); + let spacer = lines.next().unwrap(); let selected = lines.next().unwrap(); let unselected = lines.next().unwrap(); assert_eq!(prompt, "Select a task (↑/↓, Enter to run, Esc to clear):"); + assert!(spacer.is_empty()); assert_eq!(selected, " › build: echo build"); assert_eq!(unselected, " lint: echo lint"); } diff --git a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-list/snapshots/vp run in script.snap b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-list/snapshots/vp run in script.snap index 6cb8f51d..e85df174 100644 --- a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-list/snapshots/vp run in script.snap +++ b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-list/snapshots/vp run in script.snap @@ -1,12 +1,12 @@ --- source: crates/vite_task_bin/tests/e2e_snapshots/main.rs -assertion_line: 460 expression: e2e_outputs --- > vp run list-tasks @ expect-milestone: task-select::0 $ vp run ⊘ cache disabled Select a task (↑/↓, Enter to run, Esc to clear): + › hello: echo hello from root list-tasks: vp run app#build: echo build app diff --git a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select-truncate/snapshots/interactive long command truncated.snap b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select-truncate/snapshots/interactive long command truncated.snap index e5a67051..0e7fe656 100644 --- a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select-truncate/snapshots/interactive long command truncated.snap +++ b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select-truncate/snapshots/interactive long command truncated.snap @@ -7,6 +7,7 @@ info: > vp run @ expect-milestone: task-select::0 Select a task (↑/↓, Enter to run, Esc to clear): + › build: echo build app lint: echo lint app long-cmd: echo aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa… @@ -14,6 +15,7 @@ Select a task (↑/↓, Enter to run, Esc to clear): @ write-key: down @ expect-milestone: task-select::1 Select a task (↑/↓, Enter to run, Esc to clear): + build: echo build app › lint: echo lint app long-cmd: echo aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa… @@ -21,6 +23,7 @@ Select a task (↑/↓, Enter to run, Esc to clear): @ write-key: down @ expect-milestone: task-select::2 Select a task (↑/↓, Enter to run, Esc to clear): + build: echo build app lint: echo lint app › long-cmd: echo aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa… @@ -28,6 +31,7 @@ Select a task (↑/↓, Enter to run, Esc to clear): @ write-key: down @ expect-milestone: task-select::3 Select a task (↑/↓, Enter to run, Esc to clear): + build: echo build app lint: echo lint app long-cmd: echo aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa… @@ -35,6 +39,7 @@ Select a task (↑/↓, Enter to run, Esc to clear): @ write-key: up @ expect-milestone: task-select::2 Select a task (↑/↓, Enter to run, Esc to clear): + build: echo build app lint: echo lint app › long-cmd: echo aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa… diff --git a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive enter with no results does nothing.snap b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive enter with no results does nothing.snap index f351b4f3..99bca642 100644 --- a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive enter with no results does nothing.snap +++ b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive enter with no results does nothing.snap @@ -7,6 +7,7 @@ info: > vp run @ expect-milestone: task-select::0 Select a task (↑/↓, Enter to run, Esc to clear): + › build: echo build app lint: echo lint app test: echo test app @@ -23,11 +24,13 @@ Select a task (↑/↓, Enter to run, Esc to clear): @ write: zzzzz @ expect-milestone: task-select:zzzzz:0 Select a task (↑/↓, Enter to run, Esc to clear): zzzzz + No matching tasks. @ write-key: enter @ write-key: escape @ expect-milestone: task-select::0 Select a task (↑/↓, Enter to run, Esc to clear): + › build: echo build app lint: echo lint app test: echo test app diff --git a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive escape clears query.snap b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive escape clears query.snap index cfa44e3b..505af762 100644 --- a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive escape clears query.snap +++ b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive escape clears query.snap @@ -7,6 +7,7 @@ info: > vp run @ expect-milestone: task-select::0 Select a task (↑/↓, Enter to run, Esc to clear): + › build: echo build app lint: echo lint app test: echo test app @@ -23,11 +24,13 @@ Select a task (↑/↓, Enter to run, Esc to clear): @ write: lin @ expect-milestone: task-select:lin:0 Select a task (↑/↓, Enter to run, Esc to clear): lin + › lint: echo lint app lib#lint: echo lint lib @ write-key: escape @ expect-milestone: task-select::0 Select a task (↑/↓, Enter to run, Esc to clear): + › build: echo build app lint: echo lint app test: echo test app diff --git a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive scroll long list.snap b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive scroll long list.snap index a009030e..af033920 100644 --- a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive scroll long list.snap +++ b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive scroll long list.snap @@ -7,6 +7,7 @@ info: > vp run @ expect-milestone: task-select::0 Select a task (↑/↓, Enter to run, Esc to clear): + › build: echo build app lint: echo lint app test: echo test app @@ -30,6 +31,7 @@ Select a task (↑/↓, Enter to run, Esc to clear): @ write-key: down @ expect-milestone: task-select::8 Select a task (↑/↓, Enter to run, Esc to clear): + build: echo build app lint: echo lint app test: echo test app @@ -53,6 +55,7 @@ Select a task (↑/↓, Enter to run, Esc to clear): @ write-key: up @ expect-milestone: task-select::0 Select a task (↑/↓, Enter to run, Esc to clear): + › build: echo build app lint: echo lint app test: echo test app diff --git a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive search other package task.snap b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive search other package task.snap index 85bfd0f7..23bc607c 100644 --- a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive search other package task.snap +++ b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive search other package task.snap @@ -7,6 +7,7 @@ info: > vp run @ expect-milestone: task-select::0 Select a task (↑/↓, Enter to run, Esc to clear): + › build: echo build app lint: echo lint app test: echo test app @@ -23,6 +24,7 @@ Select a task (↑/↓, Enter to run, Esc to clear): @ write: typec @ expect-milestone: task-select:typec:0 Select a task (↑/↓, Enter to run, Esc to clear): typec + › lib#typecheck: echo typecheck lib @ write-key: enter Selected task: lib#typecheck diff --git a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive search preserves rating within package.snap b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive search preserves rating within package.snap index 4bb84dd4..53b1d1d6 100644 --- a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive search preserves rating within package.snap +++ b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive search preserves rating within package.snap @@ -7,6 +7,7 @@ info: > vp run @ expect-milestone: task-select::0 Select a task (↑/↓, Enter to run, Esc to clear): + › build: echo build lib lint: echo lint lib test: echo test lib @@ -23,6 +24,7 @@ Select a task (↑/↓, Enter to run, Esc to clear): @ write: t @ expect-milestone: task-select:t:0 Select a task (↑/↓, Enter to run, Esc to clear): t + › test: echo test lib typecheck: echo typecheck lib lint: echo lint lib diff --git a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive search then select.snap b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive search then select.snap index e8fce7b1..754468a5 100644 --- a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive search then select.snap +++ b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive search then select.snap @@ -7,6 +7,7 @@ info: > vp run @ expect-milestone: task-select::0 Select a task (↑/↓, Enter to run, Esc to clear): + › build: echo build app lint: echo lint app test: echo test app @@ -23,6 +24,7 @@ Select a task (↑/↓, Enter to run, Esc to clear): @ write: lin @ expect-milestone: task-select:lin:0 Select a task (↑/↓, Enter to run, Esc to clear): lin + › lint: echo lint app lib#lint: echo lint lib @ write-key: enter diff --git a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive search with hash skips reorder.snap b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive search with hash skips reorder.snap index 873e1cae..e796bd6e 100644 --- a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive search with hash skips reorder.snap +++ b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive search with hash skips reorder.snap @@ -7,6 +7,7 @@ info: > vp run @ expect-milestone: task-select::0 Select a task (↑/↓, Enter to run, Esc to clear): + › build: echo build app lint: echo lint app test: echo test app @@ -23,6 +24,7 @@ Select a task (↑/↓, Enter to run, Esc to clear): @ write: lib# @ expect-milestone: task-select:lib#:0 Select a task (↑/↓, Enter to run, Esc to clear): lib# + › lib#build: echo build lib lib#lint: echo lint lib lib#test: echo test lib diff --git a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive select task from lib.snap b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive select task from lib.snap index 9cf95565..a1b0dc28 100644 --- a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive select task from lib.snap +++ b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive select task from lib.snap @@ -7,6 +7,7 @@ info: > vp run @ expect-milestone: task-select::0 Select a task (↑/↓, Enter to run, Esc to clear): + › build: echo build lib lint: echo lint lib test: echo test lib diff --git a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive select task.snap b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive select task.snap index 5a2cdc30..d1a964e8 100644 --- a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive select task.snap +++ b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive select task.snap @@ -7,6 +7,7 @@ info: > vp run @ expect-milestone: task-select::0 Select a task (↑/↓, Enter to run, Esc to clear): + › build: echo build app lint: echo lint app test: echo test app @@ -23,6 +24,7 @@ Select a task (↑/↓, Enter to run, Esc to clear): @ write-key: down @ expect-milestone: task-select::1 Select a task (↑/↓, Enter to run, Esc to clear): + build: echo build app › lint: echo lint app test: echo test app diff --git a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive select with typo.snap b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive select with typo.snap index ec15563c..cd51be84 100644 --- a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive select with typo.snap +++ b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/interactive select with typo.snap @@ -8,6 +8,7 @@ info: @ expect-milestone: task-select:buid:0 Task "buid" not found. Select a task (↑/↓, Enter to run, Esc to clear): buid + › build: echo build app lib#build: echo build lib @ write-key: enter diff --git a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/verbose with typo enters selector.snap b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/verbose with typo enters selector.snap index 69ecca90..736f51e8 100644 --- a/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/verbose with typo enters selector.snap +++ b/crates/vite_task_bin/tests/e2e_snapshots/fixtures/task-select/snapshots/verbose with typo enters selector.snap @@ -8,6 +8,7 @@ info: @ expect-milestone: task-select:buid:0 Task "buid" not found. Select a task (↑/↓, Enter to run, Esc to clear): buid + › build: echo build app lib#build: echo build lib @ write-key: enter