~jaro/balkon

ref: cb8b67f9026a8a1237a02bf6f1991d1a36a53649 balkon/src/Data/Text/ParagraphLayout/Internal/Plain.hs -rw-r--r-- 12.8 KiB
Allow breaking at character bounds.
Use a single list of line breaking alternatives.
Implement trimming spaces at end of lines.
Remove redundant overflow handling.

This may be useful later when words are allowed to overflow, but this
code path is currently unused.
Decompose ProtoFragment construction.
Implement correct positioning of RTL runs.
Make SpanOptions a separate type.
Slightly decompose the Plain module.
Update documentation and derived instances.
Use internal library to hide non-public modules.
Move non-public modules into Internal namespace.
Represent line breaks directly without offsets.
Remove I8/Int distinction.

The distinction was meant to provide additional type safety, but
inconsistency with other used libraries required too many workarounds
for this to be beneficial.
Define SeparableTextContainer as its own class.
Minimise working with Data.Text.Internal.
Use ICU to find line break boundaries.
Implement line breaking on code point boundaries.
Use top edge for placing lines.
Implement run splitting.
Lay out Runs independently of Spans.
Next