Martin Andersen
bca1c889d1
Add Padding extension
...
Add extension method for specifying horizontal and vertical padding.
Similar constructor for `Padding` already existed.
Update documentation for table column appearance (padding).
Update
`Should_Render_Padded_Object_Correctly_When_Nested_Within_Other_Object`
test to use new extension method.
2020-10-27 09:09:30 +01:00
Patrik Svensson
e7f497050c
Add row and column accessors for tables and grids
2020-10-26 18:15:27 +01:00
Patrik Svensson
03334f693d
Add support for table footers
2020-10-26 00:01:13 +01:00
Patrik Svensson
c9c0ad733f
Fix rendering bug when splitting lines
...
The bug might occur if there are wide characters such as emojis
at the end of a line. The SplitLines method mixed cell width
and text length, which might give incorrect results. This commit
makes sure that comparison and calculation is done using cell width
where it's appropriate.
2020-10-24 01:45:41 +02:00
Patrik Svensson
041bd016a2
Remove verbs from extension methods
...
Removed the verbs from all extension methods that manipulate
properties which makes the API more succinct and easier to read.
Also added implicit conversion from string to Style.
As a good OSS citizen, I've obsoleted the old methods with
a warning for now, so this shouldn't break anyone using
the old methods.
2020-10-23 15:08:18 +02:00
Patrik Svensson
9afc1ea721
Add support for aligning tables
2020-10-21 18:15:51 +02:00
Patrik Svensson
5a1b8a1710
Add rule widget
...
Adds a new rule widget.
Also fixes some bugs I encountered while testing
some unrelated things in an extremely small console.
2020-10-20 01:45:53 +02:00
Patrik Svensson
1410cba6c5
Add Markdown.Escape method
2020-10-20 01:09:26 +02:00
Patrik Svensson
cb2924a609
Add table heading and footnote support
...
Closes #116
2020-10-19 15:46:57 +02:00
Patrik Svensson
bfffef630f
Do not draw tables that can't be drawn
...
This is a temporary fix for undrawable tables until we've
implemented a proper strategy. What this does is that it replaces
an undrawable table with an ellipsis (...). This should only
occur in either super big tables or deeply nested tables in a
console with a small buffer width.
2020-10-18 08:03:40 +02:00
Patrik Svensson
3f2ca49071
Add calendar control
...
Closes #101
2020-10-16 23:02:53 +02:00
Patrik Svensson
68e92f3365
Add various exception improvements
2020-10-07 11:57:28 +02:00
Patrik Svensson
3c3afe7439
Add support for rendering exceptions
2020-10-05 07:03:02 +02:00
Patrik Svensson
93ec7401c8
Add support for markdown tables
...
Closes #85
* Split Border into BoxBorder and TableBorder
* Change how different table parts are composed
* Add markdown table border
2020-10-01 14:43:08 +02:00
Patrik Svensson
cd0d182f12
Add support for recording console output
...
This commit adds support for recording console output
as well as exporting it to either text or HTML. A user can
also provide their own encoder if they wish.
2020-09-21 13:33:28 +02:00
Patrik Svensson
b197f278ed
Add support for rows
...
Closes #69
2020-09-20 19:17:33 +02:00
Patrik Svensson
3847a8949f
Fix bug with uris being interpreted as emojis
...
Closes #82
2020-09-20 13:00:44 +02:00
Patrik Svensson
eeb3f967b6
Update emoji support
...
* Add constants for emojis
* Move emoji shortcode rendering to Markup
* Add documentation
* Add example
* Add tests
2020-09-18 16:11:51 +02:00
Patrik Svensson
7d6104ace4
Add padder widget
...
This commit adds a padder can be use to pad other IRenderable
objects such as tables, panels, grids, text, etc.
2020-09-17 10:58:50 +02:00
Patrik Svensson
ce670a7ca9
Add link identity generator
2020-09-12 14:47:32 +02:00
Patrik Svensson
504746c5dc
Add link support for supported terminals
...
Also refactors the code quite a bit, to make it a bit more
easier to add features like this in the future.
Closes #75
2020-09-11 17:44:56 +02:00
Patrik Svensson
4f06687104
Restructure solution a bit
2020-09-09 08:43:48 +02:00
Patrik Svensson
3e9796849b
Add more borders for grids, tables, and panels
...
* Ascii2
* AsciiDoubleHead
* Double
* DoubleEdge
* Heavy
* HeavyEdge
* HeavyHead
* Horizontal
* Minimal
* MinimalDoubleHead
* MinimalHeavyHead
* Simple
* SimpleHeavy
2020-09-08 00:16:20 +02:00
Patrik Svensson
87bde3e5a2
Remove BorderKind in favour of Border
2020-09-06 12:29:48 +02:00
Patrik Svensson
ae6d2c63a3
Add column support
...
Adds support for rendering arbitrary data into columns.
Closes #67
2020-09-05 07:45:38 +02:00
Patrik Svensson
e946289bd9
Make styles composable
...
Also adds some new extension methods and make some APIs a bit more consistent.
Closes #64
2020-09-03 21:26:20 +02:00
Patrik Svensson
7471e9d38c
Add panel header support
...
Closes #63
2020-09-03 19:02:29 +02:00
Patrik Svensson
9f8ca6d648
Add text overflow support
...
Closes #61
2020-09-03 14:57:57 +02:00
Patrik Svensson
7fd2efaeb5
Merge segments before rendering
...
This will reduce the number of segments to render
and produce cleaner ANSI escape code sequences.
Closes #46
2020-08-30 12:40:34 +02:00
Patrik Svensson
decb887b0a
Throw if markup contains unescaped close tag
2020-08-27 09:44:55 +02:00
Patrik Svensson
31f117aed0
Clean up public API
...
* Make things a bit more consistent
* Add extension methods to configure things like tables, panels and grids.
2020-08-26 15:10:19 +02:00
Patrik Svensson
8a01b93aca
Don't limit tables and grids to markup text
...
Closes #13
2020-08-24 23:28:40 +02:00
Patrik Svensson
4cfe55cc27
Emit native line breaks
2020-08-16 13:47:57 +02:00
Patrik Svensson
5b33f80213
Fix line ending problem with text
2020-08-16 12:26:51 +02:00
Patrik Svensson
d7bbaf4a85
Add word wrapping for text
...
Closes #18
2020-08-14 18:19:24 +02:00
Patrik Svensson
1d74fb909c
Add support for adding empty rows
...
This affects grids and tables.
2020-08-11 17:49:28 +02:00
Patrik Svensson
a273f74758
Add aliases for styles
...
Closes #37
2020-08-11 16:45:05 +02:00
Patrik Svensson
717931f11c
Add support for RGB colors
...
Closes #34
2020-08-11 16:45:05 +02:00
Patrik Svensson
bcfc495843
Add support for hex colors
...
Closes #33
2020-08-11 16:45:05 +02:00
Patrik Svensson
9aa36c4cf0
Do not include cell separators in grid
...
Closes #40
2020-08-11 11:53:34 +02:00
Patrik Svensson
22d4af4482
Preserve line breaks
2020-08-10 11:42:34 +02:00
Patrik Svensson
f4d1796e40
Do not split lines if width is 0
...
Closes #32
2020-08-09 11:53:56 +02:00
Patrik Svensson
2dd0eb9f74
Add support for column alignment and padding
...
Closes #12
Closes #31
2020-08-08 23:11:34 +02:00
Patrik Svensson
fa85216554
Add fallback for unicode borders
2020-08-07 22:24:38 +02:00
Patrik Svensson
d475e3b30a
Reset colors before line break
...
Closes #28
2020-08-07 13:12:03 +02:00
Patrik Svensson
9637066927
Add better algorithm for calculating column widths
...
Closes #14
2020-08-07 12:55:33 +02:00
AdmiringWorm
b0341862cf
Add failing unit test for comparing black and default color
2020-08-07 08:20:20 +02:00
Patrik Svensson
108e56c229
Add rounded border
2020-08-05 14:19:45 +02:00
Patrik Svensson
66994cd904
Add grid support
2020-08-05 00:44:05 +02:00
Patrik Svensson
f9bd936254
Add support for showing no border
2020-08-05 00:44:05 +02:00