table of contents
- Tumbleweed 4.28.0-1.1
- Leap-16.0
- Leap-15.6
| console_codes(4) | Device Drivers Manual | console_codes(4) |
НАИМЕНОВАНИЕ¶
console_codes - управляющие и экранирующие последовательности консоли Linux
ОПИСАНИЕ¶
The Linux console implements a large subset of the VT102 and ECMA-48 / ISO/IEC 6429 / ANSI X3.64 terminal controls, plus certain private-mode sequences for changing the color palette, character-set mapping, and so on. In the tabular descriptions below, the second column gives ECMA-48 or DEC mnemonics (the latter if prefixed with DEC) for the given function. Sequences without a mnemonic are neither ECMA-48 nor VT102.
Первым процессом, который выполняется после работы обычного процесса по выводу информации и отправки к драйверу потока символов консоли (для их реального вывода), является перевод кодов, используемых при обычной работе, в коды, применяемые для печати.
Если консоль работает в режиме UTF-8, то входящие байты сначала организуются в 16-битовый Юникод. В ином случае каждый байт преобразуется согласно текущей таблице перекодировки (которая переводит данные в Юникод). Смотри раздел Наборы символов ниже).
Обычно значения Юникода преобразуются в индекс шрифта, который хранится в видеопамяти таким образом, что соответствующий образ (обнаруженный в видео-ПЗУ) появляется на экране. Заметим, что работа с Юникодом (и текущими аппаратными средствами компьютеров) позволяет одновременно использовать только 512 различных образов.
Если текущим значением Юникода является управляющий символ или если в данный момент обрабатывается экранирующая последовательность, значение будет обрабатываться особым образом. Вместо того, чтобы значение было преобразовало в шрифт и отобразилось как образ, оно приведёт к выполнению определённого действия (например, перемещение курсора) или другой функции управления. Смотрите ниже раздел Управление консолью Linux.
Некорректно явно указывать в программах аппаратные последовательности управление терминалом. Linux поддерживает работу с базой возможностей терминала terminfo(5). Вместо того, чтобы вводить управляющие последовательности вручную, вы, наверняка, захотите использовать для этой работы библиотеку, использующую terminfo, или другие утилиты, такие как ncurses(3), tput(1) или reset(1).
Управление консолью Linux¶
Этот раздел описывает все управляющие символы и экранирущие последовательности, которые выполняют специальные команды (т.е., всё, что отличается от простого вывода символа в текущую позицию курсора) консоли Linux.
Управляющие символы
A character is a control character if (before transformation according to the mapping table) it has one of the 14 codes 00 (NUL), 07 (BEL), 08 (BS), 09 (HT), 0a (LF), 0b (VT), 0c (FF), 0d (CR), 0e (SO), 0f (SI), 18 (CAN), 1a (SUB), 1b (ESC), 7f (DEL). One can set a "display control characters" mode (see below), and allow 07, 09, 0b, 18, 1a, 7f to be displayed as glyphs. On the other hand, in UTF-8 mode all codes 00–1f are regarded as control characters, regardless of any "display control characters" mode.
Если встречается управляющий символ, то он учитывается немедленно, и никак не влияет в дальнейшем (даже если он стоял в середине экранирующей последовательности), и управляющая последовательность продолжается со следующего символа. Однако, символ ESC, начинающий новую экранирующую последовательность, возможно, отменит незаконченную предыдущую последовательность, а символы CAN и SUB точно закончат любую экранирующую последовательность. Распознаваемыми управляющими символами являются: BEL, BS, HT, LF, VT, FF, CR, SO, SI, CAN, SUB, ESC, DEL, CSI. Они выполняют стандартные для них действия:
- BEL (0x07, ^G)
- beeps;
- BS (0x08, ^H)
- удаляет предыдущий символ (смещается влево на один столбец, но не далее, чем за начало строки);
- HT (0x09, ^I)
- перемещается на следующую позицию табуляции или в конец строки, если до этого не было установлено позиций табуляции;
- LF (0x0A, ^J)
- VT (0x0B, ^K)
- FF (0x0C, ^L)
- задают перевод строки, а LF/NL (в режиме новой строки) выполняет перевод каретки;
- CR (0x0D, ^M)
- задает перевод каретки;
- SO (0x0E, ^N)
- приводит в действие набор символов G1;
- SI (0x0F, ^O)
- приводит в действие набор символов G0;
- CAN (0x18, ^X)
- SUB (0x1A, ^Z)
- abort escape sequences;
- ESC (0x1B, ^[)
- начинают экранирующую последовательность;
- DEL (0x7F)
- is ignored;
- CSI (0x9B)
- is equivalent to ESC [.
ESC- но не CSI-последовательности
| ESC c | RIS | Сброс |
| ESC D | IND | Перевод строки |
| ESC E | NEL | Новая строка |
| ESC H | HTS | Установить позицию табуляции в текущем столбце |
| ESC M | RI | Обратный перевод строки |
| ESC Z | DECID | Есть только у DEC. Ядро возвращает строку ESC [ ? 6 c, утверждая что это VT102. |
| ESC 7 | DECSC | Сохранить текущее состояние (координаты курсора, атрибуты, наборы символов, указанные G0, G1). |
| ESC 8 | DECRC | Восстановить последнее сохранённое ESC 7 состояние |
| ESC % | Начать последовательность с выбором набора символов | |
| ESC % @ | Select default (ISO/IEC 646 / ISO/IEC 8859-1) | |
| ESC % G | выбор UTF-8 | |
| ESC % 8 | выбор UTF-8 (устарело) | |
| ESC # 8 | DECALN | Экранный тест на выравнивание DEC: заполняет экран символами E |
| ESC ( | Start sequence defining G0 character set (followed by one of B, 0, U, K, as below) | |
| ESC ( B | Select default (ISO/IEC 8859-1 mapping). | |
| ESC ( 0 | выбор графической перекодировки VT100 | |
| ESC ( U | выбрать null-перекодировку — сразу в символьную ROM | |
| ESC ( K | Select user mapping - the map that is loaded by the utility mapscrn(8). | |
| ESC ) | Start sequence defining G1 (followed by one of B, 0, U, K, as above). | |
| ESC > | DECPNM | Установить режим ввода цифр для дополнительной клавиатуры |
| ESC = | DECPAM | Установить режим управления для дополнительной клавиатуры |
| ESC ] | OSC | Operating System Command prefix. |
| ESC ] R | Reset palette. | |
| ESC ] P | Set palette, with parameter given in 7 hexadecimal digits nrrggbb after the final P. Here n is the color (0–15), and rrggbb indicates the red/green/blue values (0–255). |
CSI-последовательности ECMA-48
CSI (или ESC [) сопровождаются последовательностью параметров, являющихся десятичными номерами, разделёнными точкой с запятой (самый больший из них — NPAR (16)). Пустой или отсутствующий параметр приравнивается нулю. Последовательность параметров может начинаться одним знаком вопроса.
Тем не менее, после CSI [ (или ESC [ [) считывается единственный символ и оставшаяся часть последовательности игнорируется. (Смысл этого в том, чтобы не отображать функциональную клавишу).
Результат работы CSI-последовательности определяется её конечным символом.
| @ | ICH | Вставить N пустых символов |
| A | CUU | Переместить курсор вверх на N строк |
| B | CUD | Переместить курсор вниз на N строк |
| С | CUF | Переместить курсор вправо на N столбцов |
| D | CUB | Переместить курсор влево на N столбцов |
| E | CNL | Переместить курсор вниз на N строк в столбец 1 |
| F | CPL | Переместить курсор вверх на N строк в столбец 1 |
| Г | CHA | Переместить курсор в указанный столбец текущей строки |
| H | CUP | Переместить курсор в указанную строку и столбец (начало в 1,1) |
| J | ED | Очистить экран (по умолчанию от курсора до конца экрана) |
| ESC [ 1 J: очистить от начала до курсора | ||
| ESC [ 2 J: очистить весь экран | ||
| ESC [ 3 J: erase whole display including scroll-back buffer (since Linux 3.0). | ||
| K | EL | Очистить строку (по умолчанию от курсора до конца строки) |
| ESC [ 1 K: очистить от начала строки до курсора | ||
| ESC [ 2 K: очистить всю строку | ||
| L | IL | Вставить N пустых строк |
| M | DL | Удалить N строк |
| П | DCH | Удалить N символов в текущей строке |
| X | ECH | Очистить N символов в текущей строке |
| a | HPR | Переместить курсор вправо на N столбцов |
| c | DA | Ответ по ESC [ ? 6 c: «Я терминал VT102» |
| d | VPA | Переместить курсор в указанную строку текущего столбца |
| e | VPR | Переместить курсор вниз на N строк |
| ф | HVP | Переместить курсор в указанную строку и столбец |
| g | TBC | Без параметра: очистить текущую позицию табуляции |
| ESC [ 3 g: удалить все позиции табуляции | ||
| г | SM | Режим установки (смотрите ниже) |
| l | RM | Режим сброса (смотрите ниже) |
| m | SGR | Установка атрибутов (смотрите ниже) |
| n | DSR | Отчёт о состоянии (смотрите ниже) |
| q | DECLL | Управление индикаторами на клавиатуре |
| ESC [ 0 q: выключить все индикаторы | ||
| ESC [ 1 q: включить Scroll Lock | ||
| ESC [ 2 q: включить Num Lock | ||
| ESC [ 3 q: включить Caps Lock | ||
| r | DECSTBM | Установить область прокрутки; параметрами будут верхняя и нижняя строки |
| s | ? | Сохранить местоположение курсора |
| u | ? | Восстановить местоположение курсора |
| ` | HPA | Переместить курсор в указанный столбец текущей строки |
ECMA-48 Select Graphic Rendition
Последовательность ECMA-48 SGR управляющих символов ESC [ parameters m устанавливает атрибуты экрана. В одной последовательности может быть задано несколько атрибутов. Пустой параметр (между точкой с запятой или начальной строкой или символом завершения) считается нулём.
| параметр | результат |
| 0 | сбросить все атрибуты в их значения по умолчанию |
| 1 | установить жирный |
| 2 | установить более яркий (имитируется цветом на цветном дисплее) |
| 3 | set italic (since Linux 2.6.22; simulated with color on a color display) |
| 4 | установить подчеркивание (имитируется цветом на цветном дисплее) (цвета, используемые для имитации затемнения или подчеркивания, устанавливаются при помощи ESC ] …) |
| 5 | включить мерцание |
| 7 | включить инвертирование видео |
| 10 | сбросить выбранную перекодировку, флаг управления экраном и переключить метафлаг (в ECMA-48 указан как «первичный шрифт»). |
| 11 | выбрать null-перекодировку, установить флаг управления экраном, сбросить переключатель метафлага (в ECMA-48 указан как «первый альтернативный шрифт»). |
| 12 | выбрать null-перекодировку, установить флаг управления экраном, установить переключатель метафлага (в ECMA-48 указан как «второй альтернативный шрифт»). Переключение метафлага вызывает переключение старшего бита в байте до его перекодировки согласно таблице трансляции. |
| 21 | set underline; before Linux 4.17, this value set normal intensity (as is done in many other terminals) |
| 22 | включить нормальную интенсивность |
| 23 | italic off (since Linux 2.6.22) |
| 24 | выключить подчеркивание |
| 25 | выключить мерцание |
| 27 | выключить инвертированное видео |
| 30 | установить чёрный цвет символов |
| 31 | установить красный цвет символов |
| 32 | установить зелёный цвет символов |
| 33 | установить коричневый цвет символов |
| 34 | установить синий цвет символов |
| 35 | установить сиреневый цвет символов |
| 36 | установить голубой цвет символов |
| 37 | установить белый цвет символов |
| 38 | 256/24-bit foreground color follows, shoehorned into 16 basic colors (before Linux 3.16: set underscore on, set default foreground color) |
| 39 | set default foreground color (before Linux 3.16: set underscore off, set default foreground color) |
| 40 | установить чёрный цвет фона |
| 41 | установить красный цвет фона |
| 42 | установить зелёный цвет фона |
| 43 | установить коричневый цвет фона |
| 44 | установить синий цвет фона |
| 45 | установить сиреневый цвет фона |
| 46 | установить голубой цвет фона |
| 47 | установить белый цвет фона |
| 48 | 256/24-bit background color follows, shoehorned into 8 basic colors |
| 49 | установить цвет фона по умолчанию |
| 90..97 | set foreground to bright versions of 30..37 |
| 100..107 | set background, same as 40..47 (bright not supported) |
Commands 38 and 48 require further arguments:
| ;5;x | 256 color: values 0..15 are IBGR (black, red, green, ... white), 16..231 a 6x6x6 color cube, 232..255 a grayscale ramp |
| ;2;r;g;b | 24-bit color, r/g/b components are in the range 0..255 |
Переключатели режимов ECMA-48
- ESC [ 3 h
- DECCRM (по умолчанию выключен): Показывать управляющие символы.
- ESC [ 4 h
- DECIM (по умолчанию выключен): Включить режим вставки.
- ESC [ 20 h
- LF/NL (по умолчанию выключен): Автоматически выводить код CR после LF, VT или FF.
Команды вывода состояния ECMA-48
- ESC [ 5 n
- Сообщение о состоянии устройства (DSR): Ответом является ESC [ 0 n (терминал в порядке).
- ESC [ 6 n
- Сообщение о позиции курсора (CPR): Ответом является ESC [ y ; x R, где x,y являются координатами курсора.
Последовательности спец-режима DEC (DECSET/DECRST)
These are not described in ECMA-48. We list the Set Mode sequences; the Reset Mode sequences are obtained by replacing the final 'h' by 'l'.
- ESC [ ? 1 h
- DECCKM (по умолчанию выключено): Если включено, то клавиши курсора посылают префикс ESC O, а не с ESC [.
- ESC [ ? 3 h
- DECCOLM (по умолчанию = 80 столбцов): режим переключения количества столбцов 80/132. В исходном коде драйвера указано, что одной этой команды недостаточно; некоторые пользовательские утилиты, использующие нестандартные режимы, такие как resizecons(8), должны менять регистры настройки видеокарты консоли.
- ESC [ ? 5 h
- DECSCNM (по умолчанию выключено): Включить инвертированный видеорежим.
- ESC [ ? 6 h
- DECOM (по умолчанию выключено): Если включено, то координаты курсора рассматриваются относительно верхнего левого угла области прокрутки.
- ESC [ ? 7 h
- DECAWM (по умолчанию включено): Включить режим автопереноса. В этом режиме графический символ, вводящийся после 80-го столбца (или 132-го, если DECCOLM включён), переносится в начало следующей строки.
- ESC [ ? 8 h
- DECARM (по умолчанию включено): Включить режим автоповтора символов при вводе с клавиатуры.
- ESC [ ? 9 h
- X10 Mouse Reporting (default off): Set reporting mode to 1 (or reset to 0)—see below.
- ESC [ ? 25 h
- DECTECM (по умолчанию включено): Сделать курсор видимым.
- ESC [ ? 1000 h
- X11 Mouse Reporting (default off): Set reporting mode to 2 (or reset to 0)—see below.
Специфические CSI-последовательности консоли Linux
The following sequences are neither ECMA-48 nor native VT102. They are native to the Linux console driver. Colors are in SGR parameters: 0 = black, 1 = red, 2 = green, 3 = brown, 4 = blue, 5 = magenta, 6 = cyan, 7 = white; 8–15 = bright versions of 0–7.
| ESC [ 1 ; n ] | Set color n as the underline color. |
| ESC [ 2 ; n ] | Set color n as the dim color. |
| ESC [ 8 ] | Сделать текущую пару цветов атрибутами по умолчанию |
| ESC [ 9 ; n ] | Set screen blank timeout to n minutes. |
| ESC [ 10 ; n ] | Задать частоту звукового сигнала (в герцах) |
| ESC [ 11 ; n ] | Задать длительность звукового сигнала (в миллисекундах) |
| ESC [ 12 ; n ] | Переместить указанную консоль перед остальными |
| ESC [ 13 ] | Убрать заставку (blank screen) |
| ESC [ 14 ; n ] | Задать интервал отключения питания VESA (в минутах) |
| ESC [ 15 ] | Переместить предыдущую консоль перед остальными (начиная с Linux 2.6.0) |
| ESC [ 16 ; n ] | Задать интервал мигания курсора (в миллисекундах) (начиная с Linux 4.2). |
Наборы символов¶
Ядро располагает информацией о 4-х типах трансляции байтов в символы консоли экрана. Эти четыре таблицы: a) Latin1 -> PC, b) графика VT100 -> PC, c) PC -> PC, d) определяется пользователем.
There are two character sets, called G0 and G1, and one of them is the current character set. (Initially G0.) Typing ^N causes G1 to become current, ^O causes G0 to become current.
Данные переменные G0 и G1 указывают на таблицу трансляции и могут меняться пользователем. Изначально они указывают на таблицы a) и b) соответственно. Последовательности ESC ( B, ESC ( 0, ESC ( U и ESC ( K заставляют G0 ссылаться на таблиц трансляции a), b), c) и d), соответственно. Последовательности ESC ) B, ESC ) 0, ESC ) U, и ESC ) K заставляют G1 ссылаться на таблицу трансляции a), b), c) и d), соответственно.
The sequence ESC c causes a terminal reset, which is what you want if the screen is all garbled. The oft-advised "echo ^V^O" will make only G0 current, but there is no guarantee that G0 points at table a). In some distributions there is a program reset(1) that just does "echo ^[c". If your terminfo entry for the console is correct (and has an entry rs1=\Ec), then "tput reset" will also work.
Определенная пользователем таблица перекодировки может быть установлена с помощью mapscrn(8). Результатом перекодировки будет то, что при указании символа c в видеопамять будет отправлен символ s = перекодировка[c] . Побитовое изображение, соответствующее s, ищется в ПЗУ символов и может меняться при помощи setfont(8).
Отслеживание мыши¶
Для отслеживания работы мыши в системе предполагается выдача xterm(1)-совместимых сигналов о состоянии мыши. Так как драйвер консоли не распознает такого устройства, как мышь (или похожего типа), то эти сигналы отправляются во входной поток консоли, только когда драйвер виртуального терминала получает сигнал ioctl об обновлении состояния мыши. Эти сигналы ioctl должны генерироваться пользовательскими приложениями, поддерживающими работу с мышью такими, как служба gpm(8).
The mouse tracking escape sequences generated by xterm(1) encode numeric parameters in a single character as value+040. For example, '!' is 1. The screen coordinate system is 1-based.
The X10 compatibility mode sends an escape sequence on button press encoding the location and the mouse button pressed. It is enabled by sending ESC [ ? 9 h and disabled with ESC [ ? 9 l. On button press, xterm(1) sends ESC [ M bxy (6 characters). Here b is button-1, and x and y are the x and y coordinates of the mouse when the button was pressed. This is the same code the kernel also produces.
Normal tracking mode (not implemented in Linux 2.0.24) sends an escape sequence on both button press and release. Modifier information is also sent. It is enabled by sending ESC [ ? 1000 h and disabled with ESC [ ? 1000 l. On button press or release, xterm(1) sends ESC [ M bxy. The low two bits of b encode button information: 0=MB1 pressed, 1=MB2 pressed, 2=MB3 pressed, 3=release. The upper bits encode what modifiers were down when the button was pressed and are added together: 4=Shift, 8=Meta, 16=Control. Again x and y are the x and y coordinates of the mouse event. The upper left corner is (1,1).
Сравнение с другими терминалами¶
Множество других типов терминалов описаны, подобно консоли Linux, как VT100-совместимые. Далее мы обсудим различия между консолью Linux и двумя другими важнейшими типами — DEC VT102 и xterm(1).
Обработка управляющих символов
Тип VT102 также распознает следующие управляющие символы:
- NUL (0x00)
- was ignored;
- ENQ (0x05)
- запускает обратное ответное сообщение;
- DC1 (0x11, ^Q, XON)
- возобновляет передачу;
- DC3 (0x13, ^S, XOFF)
- заставляет VT100 игнорировать (и останавливать передачу) всех кодов за исключением XOFF и XON.
VT100-подобную обработку DC1/DC3 можно включить в драйвере терминала.
Программа xterm(1) (в режиме VT100) распознает управляющие символы BEL, BS, HT, LF, VT, FF, CR, SO, SI, ESC.
Экранирующие последовательности
Последовательности консоли VT100, не реализованные в консоли Linux:
| ESC N | SS2 | Single shift 2. (Select G2 character set for the next character only.) |
| ESC O | SS3 | Single shift 3. (Select G3 character set for the next character only.) |
| ESC P | DCS | Device control string (ended by ESC \) |
| ESC X | SOS | Начало строки |
| ESC ^ | PM | Privacy message (ended by ESC \) |
| ESC \ | ST | Символ завершения строки |
| ESC * ... | Определить набор символов G2 | |
| ESC + ... | Определить набор символов G3 |
The program xterm(1) (in VT100 mode) recognizes ESC c, ESC # 8, ESC >, ESC =, ESC D, ESC E, ESC H, ESC M, ESC N, ESC O, ESC P ... ESC \, ESC Z (it answers ESC [ ? 1 ; 2 c, "I am a VT100 with advanced video option") and ESC ^ ... ESC \ with the same meanings as indicated above. It accepts ESC (, ESC ), ESC *, ESC + followed by 0, A, B for the DEC special character and line drawing set, UK, and US-ASCII, respectively.
The user can configure xterm(1) to respond to VT220-specific control sequences, and it will identify itself as a VT52, VT100, and up depending on the way it is configured and initialized.
It accepts ESC ] (OSC) for the setting of certain resources. In addition to the ECMA-48 string terminator (ST), xterm(1) accepts a BEL to terminate an OSC string. These are a few of the OSC control sequences recognized by xterm(1):
| ESC ] 0 ; txt ST | Set icon name and window title to txt. |
| ESC ] 1 ; txt ST | Set icon name to txt. |
| ESC ] 2 ; txt ST | Set window title to txt. |
| ESC ] 4 ; num; txt ST | Set ANSI color num to txt. |
| ESC ] 10 ; txt ST | Set dynamic text color to txt. |
| ESC ] 4 6 ; name ST | Change log file to name (normally disabled by a compile-time option). |
| ESC ] 5 0 ; fn ST | Set font to fn. |
Распознаются следующие параметры с несколько измененным значением (больше сохраняется состояние, поведение ближе к VT100/VT220):
| ESC 7 DECSC | Сохранить курсор |
| ESC 8 DECRC | Восстановить курсор |
Также распознаются
| ESC F | Cursor to lower left corner of screen (if enabled by xterm(1)'s hpLowerleftBugCompat resource). | |
| ESC l | Блокировать память (терминалы HP) | |
| Блокировать память выше курсора | ||
| ESC m | Разблокировать память (терминалы HP) | |
| ESC n | LS2 | Вызов набора символов G2 |
| ESC o | LS3 | Вызов набора символов G3 |
| ESC | | LS3R | Вызов набора символов G3 в качестве GR |
| ESC } | LS2R | Вызов набора символов G2 в качестве GR |
| ESC ~ | LS1R | Вызов набора символов G1 в качестве GR |
Также распознается ESC % и предоставляется более полная реализация UTF-8 чем в консоли Linux.
Последовательности CSI
Old versions of xterm(1), for example, from X11R5, interpret the blink SGR as a bold SGR. Later versions which implemented ANSI colors, for example, XFree86 3.1.2A in 1995, improved this by allowing the blink attribute to be displayed as a color. Modern versions of xterm implement blink SGR as blinking text and still allow colored text as an alternate rendering of SGRs. Stock X11R6 versions did not recognize the color-setting SGRs until the X11R6.8 release, which incorporated XFree86 xterm. All ECMA-48 CSI sequences recognized by Linux are also recognized by xterm, however xterm(1) implements several ECMA-48 and DEC control sequences not recognized by Linux.
Программа xterm(1) распознаёт все последовательности спец-режимов DEC, описанных выше, но ни одной последовательности спец-режимов Linux. О собственных спец-режимах xterm(1) можно прочитать в документе Управляющие последовательности Xterm, написанном Edward Moy, Stephen Gildea и Thomas E. Dickey и доступном в дистрибутиве X. Этот документ хотя и сокращённый, но всё равно намного больше данной справочной страницы. Хронологический обзор в
описывает изменения в xterm.
Программа vttest
demonstrates many of these control sequences. The xterm(1) source distribution also contains sample scripts which exercise other features.
ПРИМЕЧАНИЯ¶
Последовательность ESC 8 (DECRC) не может восстановить набор символов, изменённый с помощью ESC %.
ОШИБКИ¶
In Linux 2.0.23, CSI is broken, and NUL is not ignored inside escape sequences.
Some older kernel versions (after Linux 2.0) interpret 8-bit control sequences. These "C1 controls" use codes between 128 and 159 to replace ESC [, ESC ] and similar two-byte control sequence initiators. There are fragments of that in modern kernels (either overlooked or broken by changes to support UTF-8), but the implementation is incomplete and should be regarded as unreliable.
Linux "private mode" sequences do not follow the rules in ECMA-48 for private mode control sequences. In particular, those ending with ] do not use a standard terminating character. The OSC (set palette) sequence is a greater problem, since xterm(1) may interpret this as a control sequence which requires a string terminator (ST). Unlike the setterm(1) sequences which will be ignored (since they are invalid control sequences), the palette sequence will make xterm (1) appear to hang (though pressing the return-key will fix that). To accommodate applications which have been hardcoded to use Linux control sequences, set the xterm(1) resource brokenLinuxOSC to true.
В старой версии данного документа предполагалось, что Linux распознаёт управляющую последовательность ECMA-48 для невидимости текста. Она игнорируется.
СМОТРИТЕ ТАКЖЕ¶
ПЕРЕВОД¶
Русский перевод этой страницы руководства разработал(и) Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitriy S. Seregin <dseregin@59.ru>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Katrin Kutepova <blackkatelv@gmail.com>, Yuri Kozlov <yuray@komyakino.ru>, Иван Павлов <pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>
Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.
Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков.
| 17 мая 2025 г. | Справочные страницы Linux (невыпущенные) |