Commit Graph
266 Commits
Author SHA1 Message Date
Patrik SvenssonandPatrik Svensson 8cfe06e77a Expose extension method that gets the cell width of text 2021-09-18 23:20:28 +02:00
Patrik SvenssonandPatrik Svensson 48d49d6e18 Add extension method to get the cell width of a character 2021-09-18 23:20:28 +02:00
Nils AndresenandPatrik Svensson 49e8a980a7 Removed the additional registration of ICommand 2021-09-18 23:19:34 +02:00
GitHubPangandPhil Scott d34012cad0 Fix typos in code comments 2021-09-13 22:58:52 -04:00
Cédric LuthiandPatrik Svensson 786b7670da Fix the style parameter nullable annotation on AnsiConsoleExtensions
The style parameter is actually nullable. Also, the documentation of the style parameter has been made explicit that `Style.Plain` is used when a `null` style is passed.
2021-08-31 18:52:34 +02:00
Cédric LuthiandPatrik Svensson e081593012 Fix parsing of exceptions on .NET Framework
On .NET Framework, `exception.ToString()` uses a slightly different format than on .NET Core.

So in order to properly transform an `Exception` into an `ExceptionInfo` on both .NET Core and .NET Framework we use `exception.StackTrace` + `exception.InnerException`. As an added benefit, it greatly simplifies the implementation of the `ExceptionParser` class.
2021-08-30 11:08:24 +02:00
Liam ShoandPatrik Svensson d306ad82d1 Fix ArgumentOutOfRangeException when rendering a table
When rendering a table with East Asia characters (take 2 English alphabets width) will throw ArgumentOutOfRangeException.
2021-08-24 16:45:30 +02:00
Patrik SvenssonandPatrik Svensson d96817dc9c Do not share semaphore between consoles
Closes #494
2021-08-14 23:43:09 +02:00
Patrik SvenssonandPatrik Svensson e169df6303 Add support for manipulating individual table rows
Closes #500
2021-08-14 23:35:07 +02:00
Phil ScottandPatrik Svensson 170901f584 Adds additional check that analyzer is within a method
Resolve #487
2021-07-19 22:31:25 +02:00
Patrik SvenssonandPhil Scott fa5a1e88ec Clean up Widgets
* Move /Widgets/Live/* to /Live/*
* Move /Widgets/Prompt/* to /Prompts/*
* Move tests and expectations to match the new locations
2021-07-14 08:38:44 -04:00
Antonio ValentiniandGitHub d532e1011f Add default value parameter to Confirm extension
Closes #482
2021-07-12 08:47:36 +02:00
Patrik SvenssonandPhil Scott 5f97f2300c Support cancellation of prompts
Closes #417
2021-07-11 23:10:17 -04:00
Patrik SvenssonandPhil Scott 314e50b531 Move analyzer to own solution 2021-07-11 22:59:02 -04:00
Patrik SvenssonandPhil Scott d9f06413d0 Remove examples from main solution 2021-07-11 22:59:02 -04:00
Patrik SvenssonandPhil Scott 58eff30787 LineTreeGuide should not fall back to ASCII
If the user's environment didn't support unicode, we used
to fall back to using the AsciiTreeGuide if LineTreeGuide
was being used (which it is by default). This commit removes
that fallback since the characters used in LineTreeGuide is
covered by extended ASCII, which SHOULD be fine in almost all
scenarios.

Closes #324
2021-07-10 18:01:17 -04:00
Patrik SvenssonandPatrik Svensson 2011cb2eff Do not append suffix to text prompt
Do not append suffix to text prompt unless
there are choices or a default value specified.

Closes #413
2021-07-05 09:15:54 +02:00
Patrik SvenssonandPhil Scott 865552c3f2 Add support for selecting prompt items
Closes #447
2021-06-28 08:41:24 -04:00
Phil ScottandPatrik Svensson fa553fd72e Adds documentation for analyzers 2021-06-25 09:56:20 +02:00
Patrik SvenssonandPhil Scott a186fd94ac Preserve whitespace trivia when applying code fix 2021-06-23 23:04:37 -04:00
Nils AndresenandPatrik Svensson 6b5b31957c Added a TypeRegistrar to CommandAppTester
exposed as a public property.
For convenience, and to keep the similarity to the real CommandApp
it is also available in the ctor of CommandAppTester.
2021-06-24 01:42:29 +02:00
Nils AndresenandPatrik Svensson b92827ce3d (#460) added an overload to AnsiConsole.Ask
that takes an additional default value.
2021-06-23 23:47:12 +02:00
Patrik Svensson c9b178ac96 Moved analyzer tests to its own project
Also moves tests to `./test` which makes it possible
for all test projects to share the same .editorconfig
files and similar.
2021-06-23 22:47:12 +02:00
Phil ScottandPatrik Svensson 721d73e9eb Renames BaseAnalyzer to SpectreAnalyzer 2021-06-23 16:36:48 +02:00
Phil ScottandPatrik Svensson 8b058d6342 Renaming analyzer test project to sandbox 2021-06-23 16:36:48 +02:00
Phil ScottandPatrik Svensson d1048260cc Making the project ready for deployment
Analyzer package needs all the dependencies to be private assets, and it's output pushed to teh analyzers/dotnet/cs folder. 

We don't want anything in the lib folder, so it also disables the auto build output and warnings that there are no files for the target framework in the lib folder
2021-06-23 16:36:48 +02:00
Phil ScottandPatrik Svensson bdcc01ea68 Adding analyzers for common mistakes with live renderables 2021-06-23 16:36:48 +02:00
Phil ScottandPatrik Svensson 4f293d887d Adding analyzer project
Contains two analyzers with fixes

* Use AnsiConsole over System.Console
* Favor local instance over static implementation
2021-06-23 16:36:48 +02:00
GianHodgsonandPatrik Svensson d015a4966f Hardblank 2021-06-21 01:23:18 +02:00
Chris MissalandPatrik Svensson 5faa61fa64 Correct documentation comment text 2021-06-09 23:56:30 +02:00
Phil ScottandPatrik Svensson 0bf97cb666 Adding additional tests for property binding with value types 2021-06-08 21:21:35 +02:00
Phil ScottandPatrik Svensson ebb1076dd0 Check for default value before writing property values
Previous version was overwriting values that might have been set via a property initializer.

Closes #422
2021-06-08 21:21:35 +02:00
Cédric LuthiandGitHub bfdaef95d6 Fix OverflowException when estimating the progress remaining time (#404)
Fix OverflowException when estimating the progress remaining time
2021-05-24 09:56:29 +02:00
Patrik SvenssonandPhil Scott 450d87f5d3 Add support for fake input in asciicast recordings
* Fixes a bug with `SelectionPrompt` and page size.
* Allow `IAnsiConsoleInput` to return `null`.
2021-05-23 22:22:44 -04:00
Phil ScottandPatrik Svensson 46abadaccb Add AsciiCast demos for docs 2021-05-23 23:30:14 +02:00
Phil ScottandPatrik Svensson 69fdae70c0 Fixes non-interactive progress bars from rendering little info
If any task was not-started or finishes then everything stops rendering. I suspect this worked ok but wasn't noticed until we introduced the indeterminate progress task that starts off not-started which caused everything to bail early in the demos.
2021-05-22 09:17:34 +02:00
Patrik SvenssonandPatrik Svensson 91a0be86a3 Remove empty solution folder 2021-05-21 11:14:18 +02:00
Patrik SvenssonandPhil Scott 3dea412785 Add live display support
This commit also adds functionality to LiveRenderable that should
fix some problems related to vertical overflow.

Closes #316
Closes #415
2021-05-20 19:41:10 -04:00
Patrik SvenssonandPhil Scott 315a52f3e9 Add support for hierarchical list prompts
Closes #412
2021-05-18 11:34:16 -04:00
Ion DormencoandGitHub c147929f16 Add color aliases 2021-05-12 23:44:11 +02:00
Patrik SvenssonandPhil Scott 6549436356 Fix line break regression
In commit d1d94cd, we accidentally introduced a regression
since conhost requires all line breaks to be `\r\n`.
2021-05-10 17:42:49 -04:00
Sean FausettandPatrik Svensson 1dfc6bdadc Fix async race condition 2021-05-10 09:18:58 +02:00
Sean FausettandGitHub 2ba06577ef Improve CommandApp error message rendering
* Move line break to end of error message
* Move line break to start of each help section

Closes #392
2021-05-10 09:17:20 +02:00
Crypto CompressandPhil Scott ea5b7338ad renamed *`1.cs to *OfT.cs 2021-05-09 08:35:10 -05:00
Patrik SvenssonandPhil Scott 4d88a6ab69 Play nice with type converters 2021-05-09 08:26:08 -05:00
Patrik SvenssonandPhil Scott 1dd1945297 Add parameter value provider support
Adds support for parameter value providers which makes it
possible to set custom values for parameters.
2021-05-09 08:26:08 -05:00
Patrik SvenssonandPatrik Svensson d1d94cdebe Add Length and Lines properties to Paragraph
* Adds Length and Lines to `Paragraph`, `Markup` and `Text`.
* Do not use Environment.NewLine
2021-05-03 17:24:44 +02:00
Patrik SvenssonandPhil Scott cba02070f9 Add method to get VT/ANSI codes for renderables 2021-04-23 13:09:44 -04:00
Phil ScottandPatrik Svensson 01f707c78d Exposes Pretty property of CommandAppException
If a user is propagating the exceptions we aren't going to automatically display them. They might still want to get this exception message and use it, so we'll make it publicly available.
2021-04-23 16:44:41 +02:00
Phil ScottandPatrik Svensson 8d67c0a6b4 Removes printing of error messages when propagating 2021-04-23 16:44:41 +02:00