Nils Andresen
ba4b7b97f8
Escape any Markup when displaying selected prompt items
...
If the item contained escaped markup, after the call to RemoveMarkup
the string will contain unescaped markup (that the user explicitly had
escaped before) for those cases we need to escape all remaining markup.
2021-11-02 22:56:54 +01:00
Nils Andresen
c5c1852fc3
( #606 ) added ExceptionHandler to ICommandAppSettings
...
So exceptions can be handled in Spectre.Console.Cli.
Also, some documentation was added.
2021-10-30 01:41:29 +02:00
Nils Andresen
045d0922c8
fixed spelling in Exception
2021-10-30 00:05:16 +02:00
Nils Andresen
949f35defd
( #502 ) Added GetParent and GetParents to MultiSelectionPrompt
...
So it it possible to find the parent(s) of a given item.
2021-10-30 00:05:16 +02:00
GitHubPang
f5a2735501
Fix a typo in code comment ( #579 )
2021-10-29 21:12:01 +02:00
Patrik Svensson
d02c9e552e
Add net6.0 TFM ( #603 )
...
Closes #602
2021-10-29 21:05:17 +02:00
Patrik Svensson
35d2750b68
Internalizes the WcWidth package
...
This way, there is no need to download the WcWidth package,
and it also becomes easier to debug issues related to
Unicode cell widths.
2021-10-18 15:09:54 -04:00
Patrik Svensson
e0395dfa2b
Add AnsiConsole.Write
method
...
This commit also obsoletes the `AnsiConsole.Render` method.
Closes #576
2021-10-05 09:33:33 -04:00
Cédric Luthi
ca2e6ce0ad
Improve the error message when acquiring the interactive semaphore fails
...
Using the same error message as in the sync version of the `Run` method which is indeed much better than "Could not aquire the interactive semaphore".
2021-10-05 00:51:54 +02:00
rifatx
fa15389158
Add support custom max value for barcharts ( #545 )
2021-10-05 00:49:09 +02:00
Cédric Luthi
a5716a35e2
Future-proof conditional compilation
...
* Invert `#if NET5_0` conditions so that when adding net6.0 target framework, the _new_ APIs are used.
* Use `NET5_0_OR_GREATER` instead of `NET5_0` to ensure consistent behaviour on future target frameworks.
2021-09-29 10:01:31 +02:00
Christopher Rollings
e3dfe23b59
Work done to allow user to update table cell. ( #546 )
2021-09-27 13:03:45 +02:00
Phil Scott
ad23855b0a
Adds a segment builder for merging multiple segments
...
When merging a large amount of segments together we were doing a tremendous amount of allocation especially related to strings due to concatination.
This adds an internal SegmentBuilder that uses a stringbuilder for building up the text rather than creating a new instance and doing a concat operation for each segment.
2021-09-27 10:49:44 +02:00
Patrik Svensson
8cfe06e77a
Expose extension method that gets the cell width of text
2021-09-18 23:20:28 +02:00
Patrik Svensson
48d49d6e18
Add extension method to get the cell width of a character
2021-09-18 23:20:28 +02:00
Nils Andresen
49e8a980a7
Removed the additional registration of ICommand
2021-09-18 23:19:34 +02:00
GitHubPang
d34012cad0
Fix typos in code comments
2021-09-13 22:58:52 -04:00
Cédric Luthi
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 Luthi
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 Sho
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 Svensson
d96817dc9c
Do not share semaphore between consoles
...
Closes #494
2021-08-14 23:43:09 +02:00
Patrik Svensson
e169df6303
Add support for manipulating individual table rows
...
Closes #500
2021-08-14 23:35:07 +02:00
Patrik Svensson
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 Valentini
d532e1011f
Add default value parameter to Confirm extension
...
Closes #482
2021-07-12 08:47:36 +02:00
Patrik Svensson
5f97f2300c
Support cancellation of prompts
...
Closes #417
2021-07-11 23:10:17 -04:00
Patrik Svensson
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 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 Svensson
865552c3f2
Add support for selecting prompt items
...
Closes #447
2021-06-28 08:41:24 -04:00
Nils Andresen
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
GianHodgson
d015a4966f
Hardblank
2021-06-21 01:23:18 +02:00
Chris Missal
5faa61fa64
Correct documentation comment text
2021-06-09 23:56:30 +02:00
Phil Scott
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 Luthi
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 Svensson
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 Scott
46abadaccb
Add AsciiCast demos for docs
2021-05-23 23:30:14 +02:00
Phil Scott
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 Svensson
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 Svensson
315a52f3e9
Add support for hierarchical list prompts
...
Closes #412
2021-05-18 11:34:16 -04:00
Ion Dormenco
c147929f16
Add color aliases
2021-05-12 23:44:11 +02:00
Patrik Svensson
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 Fausett
1dfc6bdadc
Fix async race condition
2021-05-10 09:18:58 +02:00
Sean Fausett
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 Compress
ea5b7338ad
renamed *`1.cs to *OfT.cs
2021-05-09 08:35:10 -05:00
Patrik Svensson
4d88a6ab69
Play nice with type converters
2021-05-09 08:26:08 -05:00
Patrik Svensson
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 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 Svensson
cba02070f9
Add method to get VT/ANSI codes for renderables
2021-04-23 13:09:44 -04:00
Phil Scott
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 Scott
8d67c0a6b4
Removes printing of error messages when propagating
2021-04-23 16:44:41 +02:00