[READ-ONLY] Mirror of https://github.com/bombshell-dev/clack. Effortlessly build beautiful command-line apps bomb.sh/docs/clack/basics/getting-started/
cli command-line command-line-app node prompt prompts
5

Configure Feed

Select the types of activity you want to include in your feed.

fix: respect withGuide option in password and path prompts (#460)

Co-authored-by: Kai Gritun <kai@kaigritun.com>

authored by

Kai Gritun
Kai Gritun
and committed by
GitHub
(Feb 7, 2026, 6:03 PM UTC) 0e4ddc91 de1fc4c2

+111 -98
+5
.changeset/fix-withguide-password-path.md
··· 1 + --- 2 + "@clack/prompts": patch 3 + --- 4 + 5 + Fix `withGuide` option being ignored in password and path prompts
+19 -11
packages/prompts/src/autocomplete.ts
··· 1 - import { AutocompletePrompt } from '@clack/core'; 1 + import { AutocompletePrompt, settings } from '@clack/core'; 2 2 import color from 'picocolors'; 3 3 import { 4 4 type CommonOptions, ··· 95 95 output: opts.output, 96 96 validate: opts.validate, 97 97 render() { 98 + const hasGuide = opts.withGuide ?? settings.withGuide; 98 99 // Title and message display 99 - const headings = [`${color.gray(S_BAR)}`, `${symbol(this.state)} ${opts.message}`]; 100 + const headings = hasGuide 101 + ? [`${color.gray(S_BAR)}`, `${symbol(this.state)} ${opts.message}`] 102 + : [`${symbol(this.state)} ${opts.message}`]; 100 103 const userInput = this.userInput; 101 104 const options = this.options; 102 105 const placeholder = opts.placeholder; ··· 109 112 const selected = getSelectedOptions(this.selectedValues, options); 110 113 const label = 111 114 selected.length > 0 ? ` ${color.dim(selected.map(getLabel).join(', '))}` : ''; 112 - return `${headings.join('\n')}\n${color.gray(S_BAR)}${label}`; 115 + const submitPrefix = hasGuide ? color.gray(S_BAR) : ''; 116 + return `${headings.join('\n')}\n${submitPrefix}${label}`; 113 117 } 114 118 115 119 case 'cancel': { 116 120 const userInputText = userInput ? ` ${color.strikethrough(color.dim(userInput))}` : ''; 117 - return `${headings.join('\n')}\n${color.gray(S_BAR)}${userInputText}`; 121 + const cancelPrefix = hasGuide ? color.gray(S_BAR) : ''; 122 + return `${headings.join('\n')}\n${cancelPrefix}${userInputText}`; 118 123 } 119 124 120 125 default: { 121 - const guidePrefix = `${(this.state === 'error' ? color.yellow : color.cyan)(S_BAR)} `; 122 - const guidePrefixEnd = (this.state === 'error' ? color.yellow : color.cyan)(S_BAR_END); 126 + const barColor = this.state === 'error' ? color.yellow : color.cyan; 127 + const guidePrefix = hasGuide ? `${barColor(S_BAR)} ` : ''; 128 + const guidePrefixEnd = hasGuide ? barColor(S_BAR_END) : ''; 123 129 // Display cursor position - show plain text in navigation mode 124 130 let searchText = ''; 125 131 if (this.isNavigating || showPlaceholder) { ··· 146 152 const validationError = 147 153 this.state === 'error' ? [`${guidePrefix}${color.yellow(this.error)}`] : []; 148 154 155 + if (hasGuide) { 156 + headings.push(`${guidePrefix.trimEnd()}`); 157 + } 149 158 headings.push( 150 - `${guidePrefix.trimEnd()}`, 151 159 `${guidePrefix}${color.dim('Search:')}${searchText}${matches}`, 152 160 ...noResults, 153 161 ...validationError ··· 161 169 ]; 162 170 163 171 const footers = [ 164 - `${guidePrefix}${color.dim(instructions.join(' • '))}`, 165 - `${guidePrefixEnd}`, 172 + `${guidePrefix}${instructions.join(' • ')}`, 173 + guidePrefixEnd, 166 174 ]; 167 175 168 176 // Render options with selection ··· 172 180 : limitOptions({ 173 181 cursor: this.cursor, 174 182 options: this.filteredOptions, 175 - columnPadding: 3, // for `| ` 183 + columnPadding: hasGuide ? 3 : 0, // for `| ` when guide is shown 176 184 rowPadding: headings.length + footers.length, 177 185 style: (option, active) => { 178 186 const label = getLabel(option); ··· 318 326 ...errorMessage, 319 327 ]; 320 328 const footerLines = [ 321 - `${barColor(S_BAR)} ${color.dim(instructions.join(' • '))}`, 329 + `${barColor(S_BAR)} ${instructions.join(' • ')}`, 322 330 `${barColor(S_BAR_END)}`, 323 331 ]; 324 332
+8 -8
packages/prompts/src/password.ts
··· 23 23 24 24 switch (this.state) { 25 25 case 'error': { 26 - const maskedText = masked ? ` ${masked}` : ''; 26 + const errorPrefix = hasGuide ? `${color.yellow(S_BAR)} ` : ''; 27 + const errorPrefixEnd = hasGuide ? `${color.yellow(S_BAR_END)} ` : ''; 28 + const maskedText = masked ?? ''; 27 29 if (opts.clearOnError) { 28 30 this.clear(); 29 31 } 30 - const errorPrefix = hasGuide ? `${color.yellow(S_BAR)}` : ''; 31 - const errorPrefixEnd = hasGuide ? color.yellow(S_BAR_END) : ''; 32 - return `${title.trim()}\n${errorPrefix}${maskedText}\n${errorPrefixEnd} ${color.yellow(this.error)}\n`; 32 + return `${title.trim()}\n${errorPrefix}${maskedText}\n${errorPrefixEnd}${color.yellow(this.error)}\n`; 33 33 } 34 34 case 'submit': { 35 - const maskedText = masked ? ` ${color.dim(masked)}` : ''; 36 - const submitPrefix = hasGuide ? color.gray(S_BAR) : ''; 35 + const submitPrefix = hasGuide ? `${color.gray(S_BAR)} ` : ''; 36 + const maskedText = masked ? color.dim(masked) : ''; 37 37 return `${title}${submitPrefix}${maskedText}`; 38 38 } 39 39 case 'cancel': { 40 - const maskedText = masked ? ` ${color.strikethrough(color.dim(masked))}` : ''; 41 - const cancelPrefix = hasGuide ? color.gray(S_BAR) : ''; 40 + const cancelPrefix = hasGuide ? `${color.gray(S_BAR)} ` : ''; 41 + const maskedText = masked ? color.strikethrough(color.dim(masked)) : ''; 42 42 return `${title}${cancelPrefix}${maskedText}${ 43 43 masked && hasGuide ? `\n${color.gray(S_BAR)}` : '' 44 44 }`;
+33 -33
packages/prompts/test/__snapshots__/autocomplete.test.ts.snap
··· 12 12 │ ○ Cherry 13 13 │ ○ Grape 14 14 │ ○ Orange 15 - │ ↑/↓ to select • Enter: confirm • Type: to search 15 + │ ↑/↓ to select • Enter: confirm • Type: to search 16 16 └", 17 17 " 18 18 ", ··· 33 33 │ ○ Option 3 34 34 │ ○ Option 4 35 35 │ ... 36 - │ ↑/↓ to select • Enter: confirm • Type: to search 36 + │ ↑/↓ to select • Enter: confirm • Type: to search 37 37 └", 38 38 "<cursor.backward count=999><cursor.up count=11>", 39 39 "<cursor.down count=1>", ··· 58 58 │ ○ Cherry 59 59 │ ○ Grape 60 60 │ ○ Orange 61 - │ ↑/↓ to select • Enter: confirm • Type: to search 61 + │ ↑/↓ to select • Enter: confirm • Type: to search 62 62 └", 63 63 "<cursor.backward count=999><cursor.up count=10>", 64 64 "<cursor.down count=3>", ··· 66 66 "│ Search: g█ (2 matches) 67 67 │ ● Grape 68 68 │ ○ Orange 69 - │ ↑/↓ to select • Enter: confirm • Type: to search 69 + │ ↑/↓ to select • Enter: confirm • Type: to search 70 70 └", 71 71 "<cursor.backward count=999><cursor.up count=7>", 72 72 "<cursor.down count=1>", ··· 91 91 │ Line 2 92 92 │ Line 3 93 93 │ ... 94 - │ ↑/↓ to select • Enter: confirm • Type: to search 94 + │ ↑/↓ to select • Enter: confirm • Type: to search 95 95 └", 96 96 "<cursor.backward count=999><cursor.up count=10>", 97 97 "<erase.down>", ··· 118 118 │ ○ Cherry 119 119 │ ○ Grape 120 120 │ ○ Orange 121 - │ ↑/↓ to select • Enter: confirm • Type: to search 121 + │ ↑/↓ to select • Enter: confirm • Type: to search 122 122 └", 123 123 "<cursor.backward count=999><cursor.up count=10>", 124 124 "<cursor.down count=1>", ··· 143 143 │ ○ Cherry 144 144 │ ○ Grape 145 145 │ ○ Orange 146 - │ ↑/↓ to select • Enter: confirm • Type: to search 146 + │ ↑/↓ to select • Enter: confirm • Type: to search 147 147 └", 148 148 "<cursor.backward count=999><cursor.up count=10>", 149 149 "<cursor.down count=1>", ··· 165 165 │ Search: _ 166 166 │ ... 167 167 │ ● Option 2 168 - │ ↑/↓ to select • Enter: confirm • Type: to search 168 + │ ↑/↓ to select • Enter: confirm • Type: to search 169 169 └", 170 170 "<cursor.backward count=999><cursor.up count=7>", 171 171 "<erase.down>", ··· 191 191 │ ○ Grape 192 192 │ ○ Orange 193 193 │ ○ Kiwi 194 - │ ↑/↓ to select • Enter: confirm • Type: to search 194 + │ ↑/↓ to select • Enter: confirm • Type: to search 195 195 └", 196 196 "<cursor.backward count=999><cursor.up count=11>", 197 197 "<cursor.down count=3>", ··· 203 203 │ ○ Grape 204 204 │ ○ Orange 205 205 │ ○ Kiwi 206 - │ ↑/↓ to select • Enter: confirm • Type: to search 206 + │ ↑/↓ to select • Enter: confirm • Type: to search 207 207 └", 208 208 "<cursor.backward count=999><cursor.up count=11>", 209 209 "<cursor.down count=5>", ··· 213 213 │ ○ Grape 214 214 │ ○ Orange 215 215 │ ○ Kiwi 216 - │ ↑/↓ to select • Enter: confirm • Type: to search 216 + │ ↑/↓ to select • Enter: confirm • Type: to search 217 217 └", 218 218 "<cursor.backward count=999><cursor.up count=11>", 219 219 "<cursor.down count=6>", ··· 222 222 │ ● Grape 223 223 │ ○ Orange 224 224 │ ○ Kiwi 225 - │ ↑/↓ to select • Enter: confirm • Type: to search 225 + │ ↑/↓ to select • Enter: confirm • Type: to search 226 226 └", 227 227 "<cursor.backward count=999><cursor.up count=11>", 228 228 "<cursor.down count=7>", ··· 230 230 "│ ○ Grape 231 231 │ ● Orange 232 232 │ ○ Kiwi 233 - │ ↑/↓ to select • Enter: confirm • Type: to search 233 + │ ↑/↓ to select • Enter: confirm • Type: to search 234 234 └", 235 235 "<cursor.backward count=999><cursor.up count=11>", 236 236 "<cursor.down count=8>", 237 237 "<erase.down>", 238 238 "│ ○ Orange 239 239 │ ● Kiwi (New Zealand) 240 - │ ↑/↓ to select • Enter: confirm • Type: to search 240 + │ ↑/↓ to select • Enter: confirm • Type: to search 241 241 └", 242 242 "<cursor.backward count=999><cursor.up count=11>", 243 243 "<cursor.down count=1>", ··· 262 262 │ ○ Cherry 263 263 │ ○ Grape 264 264 │ ○ Orange 265 - │ ↑/↓ to select • Enter: confirm • Type: to search 265 + │ ↑/↓ to select • Enter: confirm • Type: to search 266 266 └", 267 267 "<cursor.backward count=999><cursor.up count=10>", 268 268 "<cursor.down count=3>", 269 269 "<erase.down>", 270 270 "│ Search: z█ (0 matches) 271 271 │ No matches found 272 - │ ↑/↓ to select • Enter: confirm • Type: to search 272 + │ ↑/↓ to select • Enter: confirm • Type: to search 273 273 └", 274 274 "<cursor.backward count=999><cursor.up count=6>", 275 275 "<cursor.down count=1>", ··· 294 294 │ ○ Cherry 295 295 │ ○ Grape 296 296 │ ○ Orange 297 - │ ↑/↓ to select • Enter: confirm • Type: to search 297 + │ ↑/↓ to select • Enter: confirm • Type: to search 298 298 └", 299 299 "<cursor.backward count=999><cursor.up count=10>", 300 300 "<cursor.down count=3>", ··· 305 305 │ ○ Cherry 306 306 │ ○ Grape 307 307 │ ○ Orange 308 - │ ↑/↓ to select • Enter: confirm • Type: to search 308 + │ ↑/↓ to select • Enter: confirm • Type: to search 309 309 └", 310 310 "<cursor.backward count=999><cursor.up count=10>", 311 311 "<cursor.down count=1>", ··· 330 330 │ ○ Cherry 331 331 │ ○ Grape 332 332 │ ○ Orange 333 - │ ↑/↓ to select • Enter: confirm • Type: to search 333 + │ ↑/↓ to select • Enter: confirm • Type: to search 334 334 └", 335 335 "<cursor.backward count=999><cursor.up count=10>", 336 336 "<cursor.down count=1>", ··· 355 355 │ ● Cherry 356 356 │ ○ Grape 357 357 │ ○ Orange 358 - │ ↑/↓ to select • Enter: confirm • Type: to search 358 + │ ↑/↓ to select • Enter: confirm • Type: to search 359 359 └", 360 360 "<cursor.backward count=999><cursor.up count=10>", 361 361 "<cursor.down count=1>", ··· 378 378 │ ● Apple 379 379 │ ○ Banana 380 380 │ ○ Cherry 381 - │ ↑/↓ to select • Enter: confirm • Type: to search 381 + │ ↑/↓ to select • Enter: confirm • Type: to search 382 382 └", 383 383 "<cursor.backward count=999><cursor.up count=8>", 384 384 "<cursor.down count=3>", ··· 386 386 "│ Search: a█ (2 matches) 387 387 │ ● Apple 388 388 │ ○ Banana 389 - │ ↑/↓ to select • Enter: confirm • Type: to search 389 + │ ↑/↓ to select • Enter: confirm • Type: to search 390 390 └", 391 391 "<cursor.backward count=999><cursor.up count=7>", 392 392 "<cursor.down count=1>", ··· 409 409 │ ● Apple 410 410 │ ○ Banana 411 411 │ ○ Cherry 412 - │ ↑/↓ to select • Enter: confirm • Type: to search 412 + │ ↑/↓ to select • Enter: confirm • Type: to search 413 413 └", 414 414 "<cursor.backward count=999><cursor.up count=8>", 415 415 "<cursor.down count=3>", 416 416 "<erase.down>", 417 417 "│ Search: a█ (1 match) 418 418 │ ● Apple 419 - │ ↑/↓ to select • Enter: confirm • Type: to search 419 + │ ↑/↓ to select • Enter: confirm • Type: to search 420 420 └", 421 421 "<cursor.backward count=999><cursor.up count=6>", 422 422 "<cursor.down count=1>", ··· 441 441 │ ◻ Cherry 442 442 │ ◻ Grape 443 443 │ ◻ Orange 444 - │ ↑/↓ to navigate • Tab: select • Enter: confirm • Type: to search 444 + │ ↑/↓ to navigate • Tab: select • Enter: confirm • Type: to search 445 445 └", 446 446 " 447 447 ", ··· 461 461 │ ◻ Cherry 462 462 │ ◻ Grape 463 463 │ ◻ Orange 464 - │ ↑/↓ to navigate • Tab: select • Enter: confirm • Type: to search 464 + │ ↑/↓ to navigate • Tab: select • Enter: confirm • Type: to search 465 465 └", 466 466 "<cursor.backward count=999><cursor.up count=10>", 467 467 "<cursor.down count=3>", ··· 472 472 │ ◻ Cherry 473 473 │ ◻ Grape 474 474 │ ◻ Orange 475 - │ ↑/↓ to navigate • Space/Tab: select • Enter: confirm • Type: to search 475 + │ ↑/↓ to navigate • Space/Tab: select • Enter: confirm • Type: to search 476 476 └", 477 477 "<cursor.backward count=999><cursor.up count=10>", 478 478 "<cursor.down count=5>", ··· 486 486 │ ◻ Cherry 487 487 │ ◻ Grape 488 488 │ ◻ Orange 489 - │ ↑/↓ to navigate • Space/Tab: select • Enter: confirm • Type: to search 489 + │ ↑/↓ to navigate • Space/Tab: select • Enter: confirm • Type: to search 490 490 └", 491 491 "<cursor.backward count=999><cursor.up count=10>", 492 492 "<cursor.down count=6>", ··· 516 516 │ ◻ Cherry 517 517 │ ◻ Grape 518 518 │ ◻ Orange 519 - │ ↑/↓ to navigate • Tab: select • Enter: confirm • Type: to search 519 + │ ↑/↓ to navigate • Tab: select • Enter: confirm • Type: to search 520 520 └", 521 521 "<cursor.backward count=999><cursor.up count=10>", 522 522 "<cursor.down count=1>", ··· 530 530 │ ◻ Cherry 531 531 │ ◻ Grape 532 532 │ ◻ Orange 533 - │ ↑/↓ to navigate • Tab: select • Enter: confirm • Type: to search 533 + │ ↑/↓ to navigate • Tab: select • Enter: confirm • Type: to search 534 534 └", 535 535 "<cursor.backward count=999><cursor.up count=11>", 536 536 "<cursor.down count=1>", ··· 543 543 │ ◻ Cherry 544 544 │ ◻ Grape 545 545 │ ◻ Orange 546 - │ ↑/↓ to navigate • Tab: select • Enter: confirm • Type: to search 546 + │ ↑/↓ to navigate • Tab: select • Enter: confirm • Type: to search 547 547 └", 548 548 "<cursor.backward count=999><cursor.up count=10>", 549 549 "<cursor.down count=1>", ··· 568 568 │ ◻ Cherry 569 569 │ ◻ Grape 570 570 │ ◻ Orange 571 - │ ↑/↓ to navigate • Tab: select • Enter: confirm • Type: to search 571 + │ ↑/↓ to navigate • Tab: select • Enter: confirm • Type: to search 572 572 └", 573 573 "<cursor.backward count=999><cursor.up count=10>", 574 574 "<cursor.down count=3>", 575 575 "<erase.down>", 576 576 "│ Search: a█ (1 match) 577 577 │ ◻ Apple 578 - │ ↑/↓ to navigate • Tab: select • Enter: confirm • Type: to search 578 + │ ↑/↓ to navigate • Tab: select • Enter: confirm • Type: to search 579 579 └", 580 580 "<cursor.backward count=999><cursor.up count=6>", 581 581 "<cursor.down count=4>",
+2 -2
packages/prompts/test/__snapshots__/password.test.ts.snap
··· 207 207 "<cursor.down count=1>", 208 208 "<erase.down>", 209 209 "◇ foo 210 - │", 210 + │ ", 211 211 " 212 212 ", 213 213 "<cursor.show>", ··· 438 438 "<cursor.down count=1>", 439 439 "<erase.down>", 440 440 "◇ foo 441 - │", 441 + │ ", 442 442 " 443 443 ", 444 444 "<cursor.show>",
+44 -44
packages/prompts/test/__snapshots__/path.test.ts.snap
··· 9 9 │ Search: /tmp/█ 10 10 │ ● /tmp/bar 11 11 │ ○ /tmp/root.zip 12 - │ ↑/↓ to select • Enter: confirm • Type: to search 12 + │ ↑/↓ to select • Enter: confirm • Type: to search 13 13 └", 14 14 "<cursor.backward count=999><cursor.up count=7>", 15 15 "<cursor.down count=1>", ··· 31 31 │ Search: /tmp/█ 32 32 │ ● /tmp/bar 33 33 │ ○ /tmp/root.zip 34 - │ ↑/↓ to select • Enter: confirm • Type: to search 34 + │ ↑/↓ to select • Enter: confirm • Type: to search 35 35 └", 36 36 "<cursor.backward count=999><cursor.up count=7>", 37 37 "<cursor.down count=3>", 38 38 "<erase.down>", 39 39 "│ Search: /tmp/_█ 40 40 │ No matches found 41 - │ ↑/↓ to select • Enter: confirm • Type: to search 41 + │ ↑/↓ to select • Enter: confirm • Type: to search 42 42 └", 43 43 "<cursor.backward count=999><cursor.up count=6>", 44 44 "<cursor.down count=1>", ··· 48 48 │ Search: /tmp/_█ 49 49 │ No matches found 50 50 │ Please select a path 51 - │ ↑/↓ to select • Enter: confirm • Type: to search 51 + │ ↑/↓ to select • Enter: confirm • Type: to search 52 52 └", 53 53 "<cursor.backward count=999><cursor.up count=7>", 54 54 "<cursor.down count=1>", ··· 58 58 │ Search: /tmp/█ 59 59 │ ● /tmp/bar 60 60 │ ○ /tmp/root.zip 61 - │ ↑/↓ to select • Enter: confirm • Type: to search 61 + │ ↑/↓ to select • Enter: confirm • Type: to search 62 62 └", 63 63 "<cursor.backward count=999><cursor.up count=7>", 64 64 "<cursor.down count=3>", 65 65 "<erase.down>", 66 66 "│ Search: /tmp/b█ 67 67 │ ● /tmp/bar 68 - │ ↑/↓ to select • Enter: confirm • Type: to search 68 + │ ↑/↓ to select • Enter: confirm • Type: to search 69 69 └", 70 70 "<cursor.backward count=999><cursor.up count=6>", 71 71 "<cursor.down count=1>", ··· 86 86 │ 87 87 │ Search: /tmp/bar█ 88 88 │ ● /tmp/bar 89 - │ ↑/↓ to select • Enter: confirm • Type: to search 89 + │ ↑/↓ to select • Enter: confirm • Type: to search 90 90 └", 91 91 "<cursor.backward count=999><cursor.up count=6>", 92 92 "<cursor.down count=1>", ··· 108 108 │ Search: /tmp/█ 109 109 │ ● /tmp/bar 110 110 │ ○ /tmp/root.zip 111 - │ ↑/↓ to select • Enter: confirm • Type: to search 111 + │ ↑/↓ to select • Enter: confirm • Type: to search 112 112 └", 113 113 "<cursor.backward count=999><cursor.up count=7>", 114 114 "<cursor.down count=3>", 115 115 "<erase.down>", 116 116 "│ Search: /tmp/x█ 117 117 │ No matches found 118 - │ ↑/↓ to select • Enter: confirm • Type: to search 118 + │ ↑/↓ to select • Enter: confirm • Type: to search 119 119 └", 120 120 "<cursor.backward count=999><cursor.up count=6>", 121 121 "<cursor.down count=3>", ··· 142 142 │ Search: /tmp/█ 143 143 │ ● /tmp/bar 144 144 │ ○ /tmp/root.zip 145 - │ ↑/↓ to select • Enter: confirm • Type: to search 145 + │ ↑/↓ to select • Enter: confirm • Type: to search 146 146 └", 147 147 "<cursor.backward count=999><cursor.up count=7>", 148 148 "<cursor.down count=1>", ··· 164 164 │ Search: /tmp/█ 165 165 │ ● /tmp/bar 166 166 │ ○ /tmp/root.zip 167 - │ ↑/↓ to select • Enter: confirm • Type: to search 167 + │ ↑/↓ to select • Enter: confirm • Type: to search 168 168 └", 169 169 "<cursor.backward count=999><cursor.up count=7>", 170 170 "<cursor.down count=3>", 171 171 "<erase.down>", 172 172 "│ Search: /tmp/b█ 173 173 │ ● /tmp/bar 174 - │ ↑/↓ to select • Enter: confirm • Type: to search 174 + │ ↑/↓ to select • Enter: confirm • Type: to search 175 175 └", 176 176 "<cursor.backward count=999><cursor.up count=6>", 177 177 "<cursor.down count=3>", ··· 198 198 │ Search: /tmp/█ 199 199 │ ● /tmp/bar 200 200 │ ○ /tmp/root.zip 201 - │ ↑/↓ to select • Enter: confirm • Type: to search 201 + │ ↑/↓ to select • Enter: confirm • Type: to search 202 202 └", 203 203 "<cursor.backward count=999><cursor.up count=7>", 204 204 "<cursor.down count=3>", 205 205 "<erase.down>", 206 206 "│ Search: /tmp/r█ 207 207 │ ● /tmp/root.zip 208 - │ ↑/↓ to select • Enter: confirm • Type: to search 208 + │ ↑/↓ to select • Enter: confirm • Type: to search 209 209 └", 210 210 "<cursor.backward count=999><cursor.up count=6>", 211 211 "<cursor.down count=1>", ··· 215 215 │ Search: /tmp/r█ 216 216 │ should be /tmp/bar 217 217 │ ● /tmp/root.zip 218 - │ ↑/↓ to select • Enter: confirm • Type: to search 218 + │ ↑/↓ to select • Enter: confirm • Type: to search 219 219 └", 220 220 "<cursor.backward count=999><cursor.up count=7>", 221 221 "<cursor.down count=1>", ··· 225 225 │ Search: /tmp/█ 226 226 │ ○ /tmp/bar 227 227 │ ● /tmp/root.zip 228 - │ ↑/↓ to select • Enter: confirm • Type: to search 228 + │ ↑/↓ to select • Enter: confirm • Type: to search 229 229 └", 230 230 "<cursor.backward count=999><cursor.up count=7>", 231 231 "<cursor.down count=3>", 232 232 "<erase.down>", 233 233 "│ Search: /tmp/b█ 234 234 │ ● /tmp/bar 235 - │ ↑/↓ to select • Enter: confirm • Type: to search 235 + │ ↑/↓ to select • Enter: confirm • Type: to search 236 236 └", 237 237 "<cursor.backward count=999><cursor.up count=6>", 238 238 "<cursor.down count=1>", ··· 254 254 │ Search: /tmp/█ 255 255 │ ● /tmp/bar 256 256 │ ○ /tmp/root.zip 257 - │ ↑/↓ to select • Enter: confirm • Type: to search 257 + │ ↑/↓ to select • Enter: confirm • Type: to search 258 258 └", 259 259 "<cursor.backward count=999><cursor.up count=7>", 260 260 "<cursor.down count=3>", 261 261 "<erase.down>", 262 262 "│ Search: /tmp/r█ 263 263 │ ● /tmp/root.zip 264 - │ ↑/↓ to select • Enter: confirm • Type: to search 264 + │ ↑/↓ to select • Enter: confirm • Type: to search 265 265 └", 266 266 "<cursor.backward count=999><cursor.up count=6>", 267 267 "<cursor.down count=1>", ··· 271 271 │ Search: /tmp/r█ 272 272 │ should be /tmp/bar 273 273 │ ● /tmp/root.zip 274 - │ ↑/↓ to select • Enter: confirm • Type: to search 274 + │ ↑/↓ to select • Enter: confirm • Type: to search 275 275 └", 276 276 "<cursor.backward count=999><cursor.up count=7>", 277 277 "<cursor.down count=1>", ··· 281 281 │ Search: /tmp/█ 282 282 │ ○ /tmp/bar 283 283 │ ● /tmp/root.zip 284 - │ ↑/↓ to select • Enter: confirm • Type: to search 284 + │ ↑/↓ to select • Enter: confirm • Type: to search 285 285 └", 286 286 "<cursor.backward count=999><cursor.up count=7>", 287 287 "<cursor.down count=3>", 288 288 "<erase.down>", 289 289 "│ Search: /tmp/b█ 290 290 │ ● /tmp/bar 291 - │ ↑/↓ to select • Enter: confirm • Type: to search 291 + │ ↑/↓ to select • Enter: confirm • Type: to search 292 292 └", 293 293 "<cursor.backward count=999><cursor.up count=6>", 294 294 "<cursor.down count=1>", ··· 310 310 │ Search: /tmp/█ 311 311 │ ● /tmp/bar 312 312 │ ○ /tmp/root.zip 313 - │ ↑/↓ to select • Enter: confirm • Type: to search 313 + │ ↑/↓ to select • Enter: confirm • Type: to search 314 314 └", 315 315 "<cursor.backward count=999><cursor.up count=7>", 316 316 "<cursor.down count=1>", ··· 332 332 │ Search: /tmp/█ 333 333 │ ● /tmp/bar 334 334 │ ○ /tmp/root.zip 335 - │ ↑/↓ to select • Enter: confirm • Type: to search 335 + │ ↑/↓ to select • Enter: confirm • Type: to search 336 336 └", 337 337 "<cursor.backward count=999><cursor.up count=7>", 338 338 "<cursor.down count=3>", 339 339 "<erase.down>", 340 340 "│ Search: /tmp/_█ 341 341 │ No matches found 342 - │ ↑/↓ to select • Enter: confirm • Type: to search 342 + │ ↑/↓ to select • Enter: confirm • Type: to search 343 343 └", 344 344 "<cursor.backward count=999><cursor.up count=6>", 345 345 "<cursor.down count=1>", ··· 349 349 │ Search: /tmp/_█ 350 350 │ No matches found 351 351 │ Please select a path 352 - │ ↑/↓ to select • Enter: confirm • Type: to search 352 + │ ↑/↓ to select • Enter: confirm • Type: to search 353 353 └", 354 354 "<cursor.backward count=999><cursor.up count=7>", 355 355 "<cursor.down count=1>", ··· 359 359 │ Search: /tmp/█ 360 360 │ ● /tmp/bar 361 361 │ ○ /tmp/root.zip 362 - │ ↑/↓ to select • Enter: confirm • Type: to search 362 + │ ↑/↓ to select • Enter: confirm • Type: to search 363 363 └", 364 364 "<cursor.backward count=999><cursor.up count=7>", 365 365 "<cursor.down count=3>", 366 366 "<erase.down>", 367 367 "│ Search: /tmp/b█ 368 368 │ ● /tmp/bar 369 - │ ↑/↓ to select • Enter: confirm • Type: to search 369 + │ ↑/↓ to select • Enter: confirm • Type: to search 370 370 └", 371 371 "<cursor.backward count=999><cursor.up count=6>", 372 372 "<cursor.down count=1>", ··· 387 387 │ 388 388 │ Search: /tmp/bar█ 389 389 │ ● /tmp/bar 390 - │ ↑/↓ to select • Enter: confirm • Type: to search 390 + │ ↑/↓ to select • Enter: confirm • Type: to search 391 391 └", 392 392 "<cursor.backward count=999><cursor.up count=6>", 393 393 "<cursor.down count=1>", ··· 409 409 │ Search: /tmp/█ 410 410 │ ● /tmp/bar 411 411 │ ○ /tmp/root.zip 412 - │ ↑/↓ to select • Enter: confirm • Type: to search 412 + │ ↑/↓ to select • Enter: confirm • Type: to search 413 413 └", 414 414 "<cursor.backward count=999><cursor.up count=7>", 415 415 "<cursor.down count=3>", 416 416 "<erase.down>", 417 417 "│ Search: /tmp/x█ 418 418 │ No matches found 419 - │ ↑/↓ to select • Enter: confirm • Type: to search 419 + │ ↑/↓ to select • Enter: confirm • Type: to search 420 420 └", 421 421 "<cursor.backward count=999><cursor.up count=6>", 422 422 "<cursor.down count=3>", ··· 443 443 │ Search: /tmp/█ 444 444 │ ● /tmp/bar 445 445 │ ○ /tmp/root.zip 446 - │ ↑/↓ to select • Enter: confirm • Type: to search 446 + │ ↑/↓ to select • Enter: confirm • Type: to search 447 447 └", 448 448 "<cursor.backward count=999><cursor.up count=7>", 449 449 "<cursor.down count=1>", ··· 465 465 │ Search: /tmp/█ 466 466 │ ● /tmp/bar 467 467 │ ○ /tmp/root.zip 468 - │ ↑/↓ to select • Enter: confirm • Type: to search 468 + │ ↑/↓ to select • Enter: confirm • Type: to search 469 469 └", 470 470 "<cursor.backward count=999><cursor.up count=7>", 471 471 "<cursor.down count=3>", 472 472 "<erase.down>", 473 473 "│ Search: /tmp/b█ 474 474 │ ● /tmp/bar 475 - │ ↑/↓ to select • Enter: confirm • Type: to search 475 + │ ↑/↓ to select • Enter: confirm • Type: to search 476 476 └", 477 477 "<cursor.backward count=999><cursor.up count=6>", 478 478 "<cursor.down count=3>", ··· 499 499 │ Search: /tmp/█ 500 500 │ ● /tmp/bar 501 501 │ ○ /tmp/root.zip 502 - │ ↑/↓ to select • Enter: confirm • Type: to search 502 + │ ↑/↓ to select • Enter: confirm • Type: to search 503 503 └", 504 504 "<cursor.backward count=999><cursor.up count=7>", 505 505 "<cursor.down count=3>", 506 506 "<erase.down>", 507 507 "│ Search: /tmp/r█ 508 508 │ ● /tmp/root.zip 509 - │ ↑/↓ to select • Enter: confirm • Type: to search 509 + │ ↑/↓ to select • Enter: confirm • Type: to search 510 510 └", 511 511 "<cursor.backward count=999><cursor.up count=6>", 512 512 "<cursor.down count=1>", ··· 516 516 │ Search: /tmp/r█ 517 517 │ should be /tmp/bar 518 518 │ ● /tmp/root.zip 519 - │ ↑/↓ to select • Enter: confirm • Type: to search 519 + │ ↑/↓ to select • Enter: confirm • Type: to search 520 520 └", 521 521 "<cursor.backward count=999><cursor.up count=7>", 522 522 "<cursor.down count=1>", ··· 526 526 │ Search: /tmp/█ 527 527 │ ○ /tmp/bar 528 528 │ ● /tmp/root.zip 529 - │ ↑/↓ to select • Enter: confirm • Type: to search 529 + │ ↑/↓ to select • Enter: confirm • Type: to search 530 530 └", 531 531 "<cursor.backward count=999><cursor.up count=7>", 532 532 "<cursor.down count=3>", 533 533 "<erase.down>", 534 534 "│ Search: /tmp/b█ 535 535 │ ● /tmp/bar 536 - │ ↑/↓ to select • Enter: confirm • Type: to search 536 + │ ↑/↓ to select • Enter: confirm • Type: to search 537 537 └", 538 538 "<cursor.backward count=999><cursor.up count=6>", 539 539 "<cursor.down count=1>", ··· 555 555 │ Search: /tmp/█ 556 556 │ ● /tmp/bar 557 557 │ ○ /tmp/root.zip 558 - │ ↑/↓ to select • Enter: confirm • Type: to search 558 + │ ↑/↓ to select • Enter: confirm • Type: to search 559 559 └", 560 560 "<cursor.backward count=999><cursor.up count=7>", 561 561 "<cursor.down count=3>", 562 562 "<erase.down>", 563 563 "│ Search: /tmp/r█ 564 564 │ ● /tmp/root.zip 565 - │ ↑/↓ to select • Enter: confirm • Type: to search 565 + │ ↑/↓ to select • Enter: confirm • Type: to search 566 566 └", 567 567 "<cursor.backward count=999><cursor.up count=6>", 568 568 "<cursor.down count=1>", ··· 572 572 │ Search: /tmp/r█ 573 573 │ should be /tmp/bar 574 574 │ ● /tmp/root.zip 575 - │ ↑/↓ to select • Enter: confirm • Type: to search 575 + │ ↑/↓ to select • Enter: confirm • Type: to search 576 576 └", 577 577 "<cursor.backward count=999><cursor.up count=7>", 578 578 "<cursor.down count=1>", ··· 582 582 │ Search: /tmp/█ 583 583 │ ○ /tmp/bar 584 584 │ ● /tmp/root.zip 585 - │ ↑/↓ to select • Enter: confirm • Type: to search 585 + │ ↑/↓ to select • Enter: confirm • Type: to search 586 586 └", 587 587 "<cursor.backward count=999><cursor.up count=7>", 588 588 "<cursor.down count=3>", 589 589 "<erase.down>", 590 590 "│ Search: /tmp/b█ 591 591 │ ● /tmp/bar 592 - │ ↑/↓ to select • Enter: confirm • Type: to search 592 + │ ↑/↓ to select • Enter: confirm • Type: to search 593 593 └", 594 594 "<cursor.backward count=999><cursor.up count=6>", 595 595 "<cursor.down count=1>",