Support STRIKEOUT, UNDERCURL, and all underline styles

* Add `Metadata` struct to pass bg, underline_color, and flags info via
   metadata.
 * Keep and `IndexSet` of `Metadata` info in Terminal.
 * Use `Metadata` info to render STRIKEOUT, UNDERCURL, and all underline
   styles via `BgRect`.

Signed-off-by: Mohammad AlSaleh <CE.Mohammad.AlSaleh@gmail.com>
This commit is contained in:
Mohammad AlSaleh 2024-01-11 23:22:39 +03:00 committed by Jeremy Soller
parent 7f37ede453
commit 60b55a076d
4 changed files with 206 additions and 25 deletions

View file

@ -9,6 +9,7 @@ edition = "2021"
alacritty_terminal = "0.20"
env_logger = "0.10"
lazy_static = "1"
indexmap = "2"
log = "0.4"
serde = { version = "1", features = ["serde_derive"] }
tokio = { version = "1", features = ["sync"] }