[konsole] [Bug 387811] New: Curly and colored underlines

Egmont Koblinger bugzilla_noreply at kde.org
Mon Dec 11 23:20:02 UTC 2017


https://bugs.kde.org/show_bug.cgi?id=387811

            Bug ID: 387811
           Summary: Curly and colored underlines
           Product: konsole
           Version: unspecified
          Platform: Other
                OS: Linux
            Status: UNCONFIRMED
          Severity: wishlist
          Priority: NOR
         Component: emulation
          Assignee: konsole-devel at kde.org
          Reporter: egmont at gmail.com
  Target Milestone: ---

This is originally a feature of Kitty [1], now also adopted by VTE (GNOME
Terminal and friends). Technically two separate features, but they mostly make
sense together, e.g. for spell checking.

Apparently vim and neovim have already / are about to support these, see e.g.
vim undercurl [2], vim color [3], neovim [4].

---

The new SGR 4:3 (\e[4:3m) attribute, strictly with a colon as separator, was
introduced to start a curly underline.

In the mean time, 4:0, 4:1 and 4:2 were also added as aliases for the standard
24 (turn off all kinds of underlining), 4 (single underline) and 21 (double
underline), respectively.

At some point in the future, probably 4:4 and 4:5 could also stand for dotted
and dashed underlines in some order (these are the five types of underlining
supported by HTML/CSS).

---

The new SGR 58 and 59 sequences specify the color of the underline, following
the pattern of 38 and 39. That is, 58;5;idx for an entry of the 256-color
palette, or 58;2;r;g;b for direct RGB. There's no shortcut notation for the
first 16 entries (corresponding to SGR 30-37 and 90-97), use the 256-color mode
with indices of 0-15 instead.

59 reverts to the default, that is, the underline's color auto-following the
text color.

In case you're short of bits, I believe it's okay to drop some precision, e.g.
store only 4 bits per color channel. We were also considering this in the VTE
bug [5].

[1]
https://github.com/kovidgoyal/kitty/blob/master/protocol-extensions.asciidoc
[2] https://github.com/vim/vim/issues/1306
[3] https://github.com/vim/vim/pull/2405
[4] https://github.com/neovim/neovim/issues/7479
[5] https://bugzilla.gnome.org/show_bug.cgi?id=721761

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the konsole-devel mailing list