-
-
Notifications
You must be signed in to change notification settings - Fork 509
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Selection Prompt Search #1289
Selection Prompt Search #1289
Conversation
27d4efd
to
99392f8
Compare
This is somewhat related to #1258, as this is a feature I'd really like in my CLI, however my only feasible options are to fork the library or hope I can get this merged. |
This looks incredibly helpful - I'd love to see this merged soon. |
Thanks @GOATS2K, I'm pretty happy with it and am using it in one of my apps. I've just updated the API names to be a bit more sensible. @patriksvensson what are your thoughts on this? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good, but I think some minor things need to be addressed. I would also like to see some tests for the search functionality.
6d4c74e
to
f15ec4c
Compare
@patriksvensson thanks for taking a look, I've addressed the feedback. I've added some tests, I could add some Verify tests too and cover more scenarios but am on the fence, let me know what you think. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks a lot for this, really excited to use it! I took it for a spin in a personal fork and found the issue I commented about. Other than that it seems to work perfectly 🙇🏻
Hi @patriksvensson, please could you take another look at this PR when you get some time. I'm happy to address any further feedback 🙂 |
Would love to see this go through soon, extremely useful feature when dealing with large prompts. |
Co-authored-by: Martin Costello <[email protected]>
@slang25 I'm rebasing this and fixing the merge conflicts right now |
6222a9d
to
82e70bf
Compare
Merged! Thank you for your contribution. Much appreciated! 👍 |
Thanks @patriksvensson, this library is such a gem for the .NET community, I hope you have time to keep it going 🙂 I was worried we'd lose you to swift 😅 |
@slang25 Haha, thanks! I still have a lot of love for dotnet 🙂 |
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [Spectre.Console.Testing](https://togithub.com/spectreconsole/spectre.console) | `0.48.0` -> `0.49.0` | [![age](https://developer.mend.io/api/mc/badges/age/nuget/Spectre.Console.Testing/0.49.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/nuget/Spectre.Console.Testing/0.49.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/nuget/Spectre.Console.Testing/0.48.0/0.49.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/nuget/Spectre.Console.Testing/0.48.0/0.49.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>spectreconsole/spectre.console (Spectre.Console.Testing)</summary> ### [`v0.49.0`](https://togithub.com/spectreconsole/spectre.console/releases/tag/0.49.0) [Compare Source](https://togithub.com/spectreconsole/spectre.console/compare/0.48.0...0.49.0) ##### What's Changed - Cleanup Line-Endings by [@​nils-a](https://togithub.com/nils-a) in [https://github.com/spectreconsole/spectre.console/pull/1381](https://togithub.com/spectreconsole/spectre.console/pull/1381) - Added spectre.console.cli to quick-start. by [@​nils-a](https://togithub.com/nils-a) in [https://github.com/spectreconsole/spectre.console/pull/1413](https://togithub.com/spectreconsole/spectre.console/pull/1413) - Fix rendering of ListPrompt for odd pageSizes by [@​nils-a](https://togithub.com/nils-a) in [https://github.com/spectreconsole/spectre.console/pull/1365](https://togithub.com/spectreconsole/spectre.console/pull/1365) - Remove mandelbrot example due to conflicting license by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1426](https://togithub.com/spectreconsole/spectre.console/pull/1426) - Allow specifying a property to ignore the use of build-time packages for versioning and analysis by [@​baronfel](https://togithub.com/baronfel) in [https://github.com/spectreconsole/spectre.console/pull/1425](https://togithub.com/spectreconsole/spectre.console/pull/1425) - Add the possibility to register multiple interceptors by [@​nils-a](https://togithub.com/nils-a) in [https://github.com/spectreconsole/spectre.console/pull/1412](https://togithub.com/spectreconsole/spectre.console/pull/1412) - Added the ITypeResolver to the ExceptionHandler by [@​nils-a](https://togithub.com/nils-a) in [https://github.com/spectreconsole/spectre.console/pull/1411](https://togithub.com/spectreconsole/spectre.console/pull/1411) - Updated typo in commandApp.md by [@​DarqueWarrior](https://togithub.com/DarqueWarrior) in [https://github.com/spectreconsole/spectre.console/pull/1431](https://togithub.com/spectreconsole/spectre.console/pull/1431) - Command with -v displays app version instead of executing the command by [@​FrankRay78](https://togithub.com/FrankRay78) in [https://github.com/spectreconsole/spectre.console/pull/1427](https://togithub.com/spectreconsole/spectre.console/pull/1427) - HelpProvider colors should be configurable by [@​FrankRay78](https://togithub.com/FrankRay78) in [https://github.com/spectreconsole/spectre.console/pull/1408](https://togithub.com/spectreconsole/spectre.console/pull/1408) - Direct contributors to the current CONTRIBUTING.md by [@​tonycknight](https://togithub.com/tonycknight) in [https://github.com/spectreconsole/spectre.console/pull/1435](https://togithub.com/spectreconsole/spectre.console/pull/1435) - Fix deadlock when cancelling prompts by [@​caesay](https://togithub.com/caesay) in [https://github.com/spectreconsole/spectre.console/pull/1439](https://togithub.com/spectreconsole/spectre.console/pull/1439) - Add progress bar value formatter by [@​jsheely](https://togithub.com/jsheely) in [https://github.com/spectreconsole/spectre.console/pull/1414](https://togithub.com/spectreconsole/spectre.console/pull/1414) - Update dependencies and do some clean-up by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1440](https://togithub.com/spectreconsole/spectre.console/pull/1440) - Delete \[UsesVerify], which has become obsolete through the latest update. by [@​danielcweber](https://togithub.com/danielcweber) in [https://github.com/spectreconsole/spectre.console/pull/1456](https://togithub.com/spectreconsole/spectre.console/pull/1456) - Don't erase secret prompt text upon backspace when mask is null by [@​danielcweber](https://togithub.com/danielcweber) in [https://github.com/spectreconsole/spectre.console/pull/1458](https://togithub.com/spectreconsole/spectre.console/pull/1458) - Update dependencies to the latest version by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1459](https://togithub.com/spectreconsole/spectre.console/pull/1459) - Automatically register command settings by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1463](https://togithub.com/spectreconsole/spectre.console/pull/1463) - chore: Update dependency dotnet-example to v3.1.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/spectreconsole/spectre.console/pull/1470](https://togithub.com/spectreconsole/spectre.console/pull/1470) - chore: Update dependency Roslynator.Analyzers to v4.11.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/spectreconsole/spectre.console/pull/1473](https://togithub.com/spectreconsole/spectre.console/pull/1473) - Remove \[DebuggerDisplay] from Paragraph by [@​martincostello](https://togithub.com/martincostello) in [https://github.com/spectreconsole/spectre.console/pull/1477](https://togithub.com/spectreconsole/spectre.console/pull/1477) - Selection Prompt Search by [@​slang25](https://togithub.com/slang25) in [https://github.com/spectreconsole/spectre.console/pull/1289](https://togithub.com/spectreconsole/spectre.console/pull/1289) - Update dependency SixLabors.ImageSharp to v3.1.3 by [@​renovate](https://togithub.com/renovate) in [https://github.com/spectreconsole/spectre.console/pull/1486](https://togithub.com/spectreconsole/spectre.console/pull/1486) - Positioned Progress Tasks - Before or After Other Tasks by [@​thomhurst](https://togithub.com/thomhurst) in [https://github.com/spectreconsole/spectre.console/pull/1250](https://togithub.com/spectreconsole/spectre.console/pull/1250) - Added NoStackTrace to ExceptionFormats by [@​gerardog](https://togithub.com/gerardog) in [https://github.com/spectreconsole/spectre.console/pull/1489](https://togithub.com/spectreconsole/spectre.console/pull/1489) - Pipe character for listing options (issue 1434) by [@​FrankRay78](https://togithub.com/FrankRay78) in [https://github.com/spectreconsole/spectre.console/pull/1498](https://togithub.com/spectreconsole/spectre.console/pull/1498) - Improve XmlDoc output by [@​yenneferofvengerberg](https://togithub.com/yenneferofvengerberg) in [https://github.com/spectreconsole/spectre.console/pull/1503](https://togithub.com/spectreconsole/spectre.console/pull/1503) - Revert [`71a5d83`](https://togithub.com/spectreconsole/spectre.console/commit/71a5d830) to undo flickering regression by [@​phil-scott-78](https://togithub.com/phil-scott-78) in [https://github.com/spectreconsole/spectre.console/pull/1504](https://togithub.com/spectreconsole/spectre.console/pull/1504) - AddDelegate uses an abstract type when used in a branch by [@​BlazeFace](https://togithub.com/BlazeFace) in [https://github.com/spectreconsole/spectre.console/pull/1509](https://togithub.com/spectreconsole/spectre.console/pull/1509) - Missing Separator When Headers are Hidden by [@​BlazeFace](https://togithub.com/BlazeFace) in [https://github.com/spectreconsole/spectre.console/pull/1513](https://togithub.com/spectreconsole/spectre.console/pull/1513) - Expose raw arguments on the command context by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1523](https://togithub.com/spectreconsole/spectre.console/pull/1523) - Add token representation to remaining arguments by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1525](https://togithub.com/spectreconsole/spectre.console/pull/1525) ##### New Contributors - [@​baronfel](https://togithub.com/baronfel) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1425](https://togithub.com/spectreconsole/spectre.console/pull/1425) - [@​DarqueWarrior](https://togithub.com/DarqueWarrior) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1431](https://togithub.com/spectreconsole/spectre.console/pull/1431) - [@​tonycknight](https://togithub.com/tonycknight) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1435](https://togithub.com/spectreconsole/spectre.console/pull/1435) - [@​caesay](https://togithub.com/caesay) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1439](https://togithub.com/spectreconsole/spectre.console/pull/1439) - [@​jsheely](https://togithub.com/jsheely) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1414](https://togithub.com/spectreconsole/spectre.console/pull/1414) - [@​danielcweber](https://togithub.com/danielcweber) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1456](https://togithub.com/spectreconsole/spectre.console/pull/1456) - [@​martincostello](https://togithub.com/martincostello) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1477](https://togithub.com/spectreconsole/spectre.console/pull/1477) - [@​slang25](https://togithub.com/slang25) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1289](https://togithub.com/spectreconsole/spectre.console/pull/1289) - [@​thomhurst](https://togithub.com/thomhurst) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1250](https://togithub.com/spectreconsole/spectre.console/pull/1250) - [@​gerardog](https://togithub.com/gerardog) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1489](https://togithub.com/spectreconsole/spectre.console/pull/1489) - [@​yenneferofvengerberg](https://togithub.com/yenneferofvengerberg) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1503](https://togithub.com/spectreconsole/spectre.console/pull/1503) - [@​BlazeFace](https://togithub.com/BlazeFace) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1509](https://togithub.com/spectreconsole/spectre.console/pull/1509) **Full Changelog**: spectreconsole/spectre.console@0.48.0...0.49.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 9pm,before 6am" in timezone Europe/Zurich, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/buehler/dotnet-operator-sdk). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zMTMuMSIsInVwZGF0ZWRJblZlciI6IjM3LjMxMy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
…ehler#751) [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [Spectre.Console.Testing](https://togithub.com/spectreconsole/spectre.console) | `0.48.0` -> `0.49.0` | [![age](https://developer.mend.io/api/mc/badges/age/nuget/Spectre.Console.Testing/0.49.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/nuget/Spectre.Console.Testing/0.49.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/nuget/Spectre.Console.Testing/0.48.0/0.49.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/nuget/Spectre.Console.Testing/0.48.0/0.49.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>spectreconsole/spectre.console (Spectre.Console.Testing)</summary> ### [`v0.49.0`](https://togithub.com/spectreconsole/spectre.console/releases/tag/0.49.0) [Compare Source](https://togithub.com/spectreconsole/spectre.console/compare/0.48.0...0.49.0) ##### What's Changed - Cleanup Line-Endings by [@​nils-a](https://togithub.com/nils-a) in [https://github.com/spectreconsole/spectre.console/pull/1381](https://togithub.com/spectreconsole/spectre.console/pull/1381) - Added spectre.console.cli to quick-start. by [@​nils-a](https://togithub.com/nils-a) in [https://github.com/spectreconsole/spectre.console/pull/1413](https://togithub.com/spectreconsole/spectre.console/pull/1413) - Fix rendering of ListPrompt for odd pageSizes by [@​nils-a](https://togithub.com/nils-a) in [https://github.com/spectreconsole/spectre.console/pull/1365](https://togithub.com/spectreconsole/spectre.console/pull/1365) - Remove mandelbrot example due to conflicting license by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1426](https://togithub.com/spectreconsole/spectre.console/pull/1426) - Allow specifying a property to ignore the use of build-time packages for versioning and analysis by [@​baronfel](https://togithub.com/baronfel) in [https://github.com/spectreconsole/spectre.console/pull/1425](https://togithub.com/spectreconsole/spectre.console/pull/1425) - Add the possibility to register multiple interceptors by [@​nils-a](https://togithub.com/nils-a) in [https://github.com/spectreconsole/spectre.console/pull/1412](https://togithub.com/spectreconsole/spectre.console/pull/1412) - Added the ITypeResolver to the ExceptionHandler by [@​nils-a](https://togithub.com/nils-a) in [https://github.com/spectreconsole/spectre.console/pull/1411](https://togithub.com/spectreconsole/spectre.console/pull/1411) - Updated typo in commandApp.md by [@​DarqueWarrior](https://togithub.com/DarqueWarrior) in [https://github.com/spectreconsole/spectre.console/pull/1431](https://togithub.com/spectreconsole/spectre.console/pull/1431) - Command with -v displays app version instead of executing the command by [@​FrankRay78](https://togithub.com/FrankRay78) in [https://github.com/spectreconsole/spectre.console/pull/1427](https://togithub.com/spectreconsole/spectre.console/pull/1427) - HelpProvider colors should be configurable by [@​FrankRay78](https://togithub.com/FrankRay78) in [https://github.com/spectreconsole/spectre.console/pull/1408](https://togithub.com/spectreconsole/spectre.console/pull/1408) - Direct contributors to the current CONTRIBUTING.md by [@​tonycknight](https://togithub.com/tonycknight) in [https://github.com/spectreconsole/spectre.console/pull/1435](https://togithub.com/spectreconsole/spectre.console/pull/1435) - Fix deadlock when cancelling prompts by [@​caesay](https://togithub.com/caesay) in [https://github.com/spectreconsole/spectre.console/pull/1439](https://togithub.com/spectreconsole/spectre.console/pull/1439) - Add progress bar value formatter by [@​jsheely](https://togithub.com/jsheely) in [https://github.com/spectreconsole/spectre.console/pull/1414](https://togithub.com/spectreconsole/spectre.console/pull/1414) - Update dependencies and do some clean-up by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1440](https://togithub.com/spectreconsole/spectre.console/pull/1440) - Delete \[UsesVerify], which has become obsolete through the latest update. by [@​danielcweber](https://togithub.com/danielcweber) in [https://github.com/spectreconsole/spectre.console/pull/1456](https://togithub.com/spectreconsole/spectre.console/pull/1456) - Don't erase secret prompt text upon backspace when mask is null by [@​danielcweber](https://togithub.com/danielcweber) in [https://github.com/spectreconsole/spectre.console/pull/1458](https://togithub.com/spectreconsole/spectre.console/pull/1458) - Update dependencies to the latest version by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1459](https://togithub.com/spectreconsole/spectre.console/pull/1459) - Automatically register command settings by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1463](https://togithub.com/spectreconsole/spectre.console/pull/1463) - chore: Update dependency dotnet-example to v3.1.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/spectreconsole/spectre.console/pull/1470](https://togithub.com/spectreconsole/spectre.console/pull/1470) - chore: Update dependency Roslynator.Analyzers to v4.11.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/spectreconsole/spectre.console/pull/1473](https://togithub.com/spectreconsole/spectre.console/pull/1473) - Remove \[DebuggerDisplay] from Paragraph by [@​martincostello](https://togithub.com/martincostello) in [https://github.com/spectreconsole/spectre.console/pull/1477](https://togithub.com/spectreconsole/spectre.console/pull/1477) - Selection Prompt Search by [@​slang25](https://togithub.com/slang25) in [https://github.com/spectreconsole/spectre.console/pull/1289](https://togithub.com/spectreconsole/spectre.console/pull/1289) - Update dependency SixLabors.ImageSharp to v3.1.3 by [@​renovate](https://togithub.com/renovate) in [https://github.com/spectreconsole/spectre.console/pull/1486](https://togithub.com/spectreconsole/spectre.console/pull/1486) - Positioned Progress Tasks - Before or After Other Tasks by [@​thomhurst](https://togithub.com/thomhurst) in [https://github.com/spectreconsole/spectre.console/pull/1250](https://togithub.com/spectreconsole/spectre.console/pull/1250) - Added NoStackTrace to ExceptionFormats by [@​gerardog](https://togithub.com/gerardog) in [https://github.com/spectreconsole/spectre.console/pull/1489](https://togithub.com/spectreconsole/spectre.console/pull/1489) - Pipe character for listing options (issue 1434) by [@​FrankRay78](https://togithub.com/FrankRay78) in [https://github.com/spectreconsole/spectre.console/pull/1498](https://togithub.com/spectreconsole/spectre.console/pull/1498) - Improve XmlDoc output by [@​yenneferofvengerberg](https://togithub.com/yenneferofvengerberg) in [https://github.com/spectreconsole/spectre.console/pull/1503](https://togithub.com/spectreconsole/spectre.console/pull/1503) - Revert [`71a5d83`](https://togithub.com/spectreconsole/spectre.console/commit/71a5d830) to undo flickering regression by [@​phil-scott-78](https://togithub.com/phil-scott-78) in [https://github.com/spectreconsole/spectre.console/pull/1504](https://togithub.com/spectreconsole/spectre.console/pull/1504) - AddDelegate uses an abstract type when used in a branch by [@​BlazeFace](https://togithub.com/BlazeFace) in [https://github.com/spectreconsole/spectre.console/pull/1509](https://togithub.com/spectreconsole/spectre.console/pull/1509) - Missing Separator When Headers are Hidden by [@​BlazeFace](https://togithub.com/BlazeFace) in [https://github.com/spectreconsole/spectre.console/pull/1513](https://togithub.com/spectreconsole/spectre.console/pull/1513) - Expose raw arguments on the command context by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1523](https://togithub.com/spectreconsole/spectre.console/pull/1523) - Add token representation to remaining arguments by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1525](https://togithub.com/spectreconsole/spectre.console/pull/1525) ##### New Contributors - [@​baronfel](https://togithub.com/baronfel) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1425](https://togithub.com/spectreconsole/spectre.console/pull/1425) - [@​DarqueWarrior](https://togithub.com/DarqueWarrior) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1431](https://togithub.com/spectreconsole/spectre.console/pull/1431) - [@​tonycknight](https://togithub.com/tonycknight) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1435](https://togithub.com/spectreconsole/spectre.console/pull/1435) - [@​caesay](https://togithub.com/caesay) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1439](https://togithub.com/spectreconsole/spectre.console/pull/1439) - [@​jsheely](https://togithub.com/jsheely) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1414](https://togithub.com/spectreconsole/spectre.console/pull/1414) - [@​danielcweber](https://togithub.com/danielcweber) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1456](https://togithub.com/spectreconsole/spectre.console/pull/1456) - [@​martincostello](https://togithub.com/martincostello) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1477](https://togithub.com/spectreconsole/spectre.console/pull/1477) - [@​slang25](https://togithub.com/slang25) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1289](https://togithub.com/spectreconsole/spectre.console/pull/1289) - [@​thomhurst](https://togithub.com/thomhurst) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1250](https://togithub.com/spectreconsole/spectre.console/pull/1250) - [@​gerardog](https://togithub.com/gerardog) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1489](https://togithub.com/spectreconsole/spectre.console/pull/1489) - [@​yenneferofvengerberg](https://togithub.com/yenneferofvengerberg) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1503](https://togithub.com/spectreconsole/spectre.console/pull/1503) - [@​BlazeFace](https://togithub.com/BlazeFace) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1509](https://togithub.com/spectreconsole/spectre.console/pull/1509) **Full Changelog**: spectreconsole/spectre.console@0.48.0...0.49.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 9pm,before 6am" in timezone Europe/Zurich, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/buehler/dotnet-operator-sdk). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zMTMuMSIsInVwZGF0ZWRJblZlciI6IjM3LjMxMy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [Spectre.Console.Analyzer](https://togithub.com/spectreconsole/spectre.console) | `0.48.0` -> `0.49.1` | [![age](https://developer.mend.io/api/mc/badges/age/nuget/Spectre.Console.Analyzer/0.49.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/nuget/Spectre.Console.Analyzer/0.49.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/nuget/Spectre.Console.Analyzer/0.48.0/0.49.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/nuget/Spectre.Console.Analyzer/0.48.0/0.49.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [Spectre.Console.Cli](https://togithub.com/spectreconsole/spectre.console) | `0.48.0` -> `0.49.1` | [![age](https://developer.mend.io/api/mc/badges/age/nuget/Spectre.Console.Cli/0.49.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/nuget/Spectre.Console.Cli/0.49.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/nuget/Spectre.Console.Cli/0.48.0/0.49.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/nuget/Spectre.Console.Cli/0.48.0/0.49.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>spectreconsole/spectre.console (Spectre.Console.Analyzer)</summary> ### [`v0.49.1`](https://togithub.com/spectreconsole/spectre.console/compare/0.49.0...0.49.1) [Compare Source](https://togithub.com/spectreconsole/spectre.console/compare/0.49.0...0.49.1) ### [`v0.49.0`](https://togithub.com/spectreconsole/spectre.console/releases/tag/0.49.0) [Compare Source](https://togithub.com/spectreconsole/spectre.console/compare/0.48.0...0.49.0) #### What's Changed - Cleanup line endings by [@​nils-a](https://togithub.com/nils-a) in [https://github.com/spectreconsole/spectre.console/pull/1381](https://togithub.com/spectreconsole/spectre.console/pull/1381) - Added Spectre.Console.Cli to quick-start. by [@​nils-a](https://togithub.com/nils-a) in [https://github.com/spectreconsole/spectre.console/pull/1413](https://togithub.com/spectreconsole/spectre.console/pull/1413) - Fix rendering of ListPrompt for odd pageSizes by [@​nils-a](https://togithub.com/nils-a) in [https://github.com/spectreconsole/spectre.console/pull/1365](https://togithub.com/spectreconsole/spectre.console/pull/1365) - Remove mandelbrot example due to conflicting license by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1426](https://togithub.com/spectreconsole/spectre.console/pull/1426) - Allow specifying a property to ignore the use of build-time packages for versioning and analysis by [@​baronfel](https://togithub.com/baronfel) in [https://github.com/spectreconsole/spectre.console/pull/1425](https://togithub.com/spectreconsole/spectre.console/pull/1425) - Add the possibility to register multiple interceptors by [@​nils-a](https://togithub.com/nils-a) in [https://github.com/spectreconsole/spectre.console/pull/1412](https://togithub.com/spectreconsole/spectre.console/pull/1412) - Added the ITypeResolver to the ExceptionHandler by [@​nils-a](https://togithub.com/nils-a) in [https://github.com/spectreconsole/spectre.console/pull/1411](https://togithub.com/spectreconsole/spectre.console/pull/1411) - Updated typo in CommandApp.md by [@​DarqueWarrior](https://togithub.com/DarqueWarrior) in [https://github.com/spectreconsole/spectre.console/pull/1431](https://togithub.com/spectreconsole/spectre.console/pull/1431) - Command with -v displays app version instead of executing the command by [@​FrankRay78](https://togithub.com/FrankRay78) in [https://github.com/spectreconsole/spectre.console/pull/1427](https://togithub.com/spectreconsole/spectre.console/pull/1427) - HelpProvider colors should be configurable by [@​FrankRay78](https://togithub.com/FrankRay78) in [https://github.com/spectreconsole/spectre.console/pull/1408](https://togithub.com/spectreconsole/spectre.console/pull/1408) - Direct contributors to the current CONTRIBUTING.md by [@​tonycknight](https://togithub.com/tonycknight) in [https://github.com/spectreconsole/spectre.console/pull/1435](https://togithub.com/spectreconsole/spectre.console/pull/1435) - Fix deadlock when cancelling prompts by [@​caesay](https://togithub.com/caesay) in [https://github.com/spectreconsole/spectre.console/pull/1439](https://togithub.com/spectreconsole/spectre.console/pull/1439) - Add progress bar value formatter by [@​jsheely](https://togithub.com/jsheely) in [https://github.com/spectreconsole/spectre.console/pull/1414](https://togithub.com/spectreconsole/spectre.console/pull/1414) - Update dependencies and do some clean-up by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1440](https://togithub.com/spectreconsole/spectre.console/pull/1440) - Delete \[UsesVerify], which has become obsolete through the latest update. by [@​danielcweber](https://togithub.com/danielcweber) in [https://github.com/spectreconsole/spectre.console/pull/1456](https://togithub.com/spectreconsole/spectre.console/pull/1456) - Don't erase secret prompt text upon backspace when mask is null by [@​danielcweber](https://togithub.com/danielcweber) in [https://github.com/spectreconsole/spectre.console/pull/1458](https://togithub.com/spectreconsole/spectre.console/pull/1458) - Update dependencies to the latest version by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1459](https://togithub.com/spectreconsole/spectre.console/pull/1459) - Automatically register command settings by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1463](https://togithub.com/spectreconsole/spectre.console/pull/1463) - Remove \[DebuggerDisplay] from Paragraph by [@​martincostello](https://togithub.com/martincostello) in [https://github.com/spectreconsole/spectre.console/pull/1477](https://togithub.com/spectreconsole/spectre.console/pull/1477) - Selection Prompt Search by [@​slang25](https://togithub.com/slang25) in [https://github.com/spectreconsole/spectre.console/pull/1289](https://togithub.com/spectreconsole/spectre.console/pull/1289) - Update dependency SixLabors.ImageSharp to v3.1.3 by [@​renovate](https://togithub.com/renovate) in [https://github.com/spectreconsole/spectre.console/pull/1486](https://togithub.com/spectreconsole/spectre.console/pull/1486) - Positioned Progress Tasks - Before or After Other Tasks by [@​thomhurst](https://togithub.com/thomhurst) in [https://github.com/spectreconsole/spectre.console/pull/1250](https://togithub.com/spectreconsole/spectre.console/pull/1250) - Added NoStackTrace to ExceptionFormats by [@​gerardog](https://togithub.com/gerardog) in [https://github.com/spectreconsole/spectre.console/pull/1489](https://togithub.com/spectreconsole/spectre.console/pull/1489) - Pipe character for listing options (issue 1434) by [@​FrankRay78](https://togithub.com/FrankRay78) in [https://github.com/spectreconsole/spectre.console/pull/1498](https://togithub.com/spectreconsole/spectre.console/pull/1498) - Improve XmlDoc output by [@​yenneferofvengerberg](https://togithub.com/yenneferofvengerberg) in [https://github.com/spectreconsole/spectre.console/pull/1503](https://togithub.com/spectreconsole/spectre.console/pull/1503) - Revert [`71a5d83`](https://togithub.com/spectreconsole/spectre.console/commit/71a5d830) to undo flickering regression by [@​phil-scott-78](https://togithub.com/phil-scott-78) in [https://github.com/spectreconsole/spectre.console/pull/1504](https://togithub.com/spectreconsole/spectre.console/pull/1504) - AddDelegate uses an abstract type when used in a branch by [@​BlazeFace](https://togithub.com/BlazeFace) in [https://github.com/spectreconsole/spectre.console/pull/1509](https://togithub.com/spectreconsole/spectre.console/pull/1509) - Missing Separator When Headers are Hidden by [@​BlazeFace](https://togithub.com/BlazeFace) in [https://github.com/spectreconsole/spectre.console/pull/1513](https://togithub.com/spectreconsole/spectre.console/pull/1513) - Expose raw arguments on the command context by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1523](https://togithub.com/spectreconsole/spectre.console/pull/1523) - Add token representation to remaining arguments by [@​patriksvensson](https://togithub.com/patriksvensson) in [https://github.com/spectreconsole/spectre.console/pull/1525](https://togithub.com/spectreconsole/spectre.console/pull/1525) #### New Contributors - [@​baronfel](https://togithub.com/baronfel) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1425](https://togithub.com/spectreconsole/spectre.console/pull/1425) - [@​DarqueWarrior](https://togithub.com/DarqueWarrior) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1431](https://togithub.com/spectreconsole/spectre.console/pull/1431) - [@​tonycknight](https://togithub.com/tonycknight) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1435](https://togithub.com/spectreconsole/spectre.console/pull/1435) - [@​caesay](https://togithub.com/caesay) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1439](https://togithub.com/spectreconsole/spectre.console/pull/1439) - [@​jsheely](https://togithub.com/jsheely) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1414](https://togithub.com/spectreconsole/spectre.console/pull/1414) - [@​danielcweber](https://togithub.com/danielcweber) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1456](https://togithub.com/spectreconsole/spectre.console/pull/1456) - [@​martincostello](https://togithub.com/martincostello) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1477](https://togithub.com/spectreconsole/spectre.console/pull/1477) - [@​slang25](https://togithub.com/slang25) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1289](https://togithub.com/spectreconsole/spectre.console/pull/1289) - [@​thomhurst](https://togithub.com/thomhurst) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1250](https://togithub.com/spectreconsole/spectre.console/pull/1250) - [@​gerardog](https://togithub.com/gerardog) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1489](https://togithub.com/spectreconsole/spectre.console/pull/1489) - [@​yenneferofvengerberg](https://togithub.com/yenneferofvengerberg) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1503](https://togithub.com/spectreconsole/spectre.console/pull/1503) - [@​BlazeFace](https://togithub.com/BlazeFace) made their first contribution in [https://github.com/spectreconsole/spectre.console/pull/1509](https://togithub.com/spectreconsole/spectre.console/pull/1509) **Full Changelog**: spectreconsole/spectre.console@0.48.0...0.49.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/ellosoft/aws-cred-mgr). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zMTMuMSIsInVwZGF0ZWRJblZlciI6IjM3LjMyMS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
@slang25 Sorry for the late comment but it looks like there is a bug. If you try to use something other than Here is a simple test data: class TestItem
{
public string Name { get; set; }
public string Url { get; set; }
}
var items = new TestItem[] {
new() { Name = "banana", Url = "something" },
new() { Name = "orange", Url = "something" },
new() { Name = "apple", Url = "something" }
};
var prompt = new SelectionPrompt<TestItem>()
.Title("Select [green]fruit[/]?")
.PageSize(10)
.AddChoices(items)
.UseConverter(x => x.Name)
.EnableSearch();
prompt.SearchHighlightStyle(Style.Parse("yellow1"));
var response = AnsiConsole.Prompt(prompt); And could you please add the method |
@fihorvat This PR had been merged and no further work is expected by the contributor. Please open a new issue if you experience any bugs. |
This PR adds a couple of features to Selection Prompt:
Leaf
selection modeI've yet to add the tests which is a bit naughty, but wanted to share what I have so far to start some discussion. Is this feature welcome, or is there a better direction?