Где я могу найти документацию по форматированию GNU / Linux TTY

412
jcubic

На сайте gnu.org есть GNU Head, который может отображаться на терминале, он имеет XTerm-совместимость (обычные документированные коды ANSI), но также содержит версию TTY (работает на Cygwin, не тестировал в XTerm или реальном терминале).

Он содержит текст как:

]Pf767676[1;37mâ]Pf9e9e9e[1;37mâ]P7bcbcbc[47m]Pfeeeeee[1;37mâ] 

она есть, \x1bто ]Pf767676и тогда нормально, [1;37mкоторая описана, например, на википедии . Что ]Pf767676и где это задокументировано?

1

1 ответ на вопрос

2
grawity

For Linux console specifically, there is the console_codes(4) manual page. It lists the sequences inherited from VT102, ECMA-48, DEC, and several private ones.

For example, all sequences starting with ESC [ (shorthand CSI) are documented under "ECMA-48 CSI sequences"; they also work the same way on all terminals (or don't work at all).

On the other hand, ESC ] (shorthand OSC) sequences are private to each terminal, and their documentation in this manpage is scattered in various places; ESC ] P is described as:

 ESC ] OSC (Should be: Operating system command) ESC ] P nrrggbb: set palette, with parameter given in 7 hexadecimal digits after the final P :-(. Here n is the color (0-15), and rrggbb indicates the red/green/blue values (0-255). ESC ] R: reset palette 

In other words, the sequence ESC ] P f 767676 makes the 15th color in the pallete to be hexadecimal #767676.

Таким образом, в `] Pf767676 [1; 37m` f (15th) измените 46 голубой фон (считая с 30) на # 767676 или установите цвет для выбора с этими 37? jcubic 10 лет назад 0
@jcubic: В консоли Linux вы напрямую имеете дело только с 8-цветовой палитрой, 0–7 отображаемой на коды `30` – `37`. Остальные 8 цветов фактически используются для «жирных» версий тех же кодов; то есть `1` +` 30` выберет 8-й цвет вместо 0-го. Аналогично, `1; 37` выбирает 15-й цвет. (Существуют последовательности для истинной 16-цветовой палитры, но они широко не поддерживаются и обычно не используются в терминалах, которые вообще позволяют изменять палитру.) grawity 10 лет назад 0

Похожие вопросы