Some documentation for the kitty extensions to DECCARA

This commit is contained in:
Kovid Goyal
2017-12-17 18:08:25 +05:30
parent d48b76508b
commit c8d5f232b3

View File

@@ -156,3 +156,26 @@ For example:
This encoding means each key event is represented by 8 or 9 printable ascii This encoding means each key event is represented by 8 or 9 printable ascii
only bytes, for maximum robustness. only bytes, for maximum robustness.
== Setting text styles/colors in arbitrary regions of the screen
There already exists an escape code to set *some* text attributes in arbitrary
regions of the screen,
link:https://vt100.net/docs/vt510-rm/DECCARA.html[DECCARA]. However, it is
limited to only a few attributes. kitty extends this to work with *all* SGR
attributes. So, for example, this can be used to set the background color in
an arbitrary region of the screen.
The motivation for this extension is the various problems with the existing
solution for erasing to background color, namely the *background color erase
(bce)* capability. See
link:https://github.com/kovidgoyal/kitty/issues/160#issuecomment-346470545[this discussion]
for a summary of problems with *bce*.
For example, to set the background color to blue in a
rectangular region of the screen from (3, 4) to (10, 11), you use:
```
<ESC>[2*x<ESC>[4;3;11;10;44$r<ESC>[*x
```