Для описания устройства в файле /etc/termcap отводится одна запись. Записью считается текстовая строка, заканчивающаяся символом перевода строки (\n). Если перед символом \n стоит символ `\', запись дополняется содержимым следующей строки. Каждая запись состоит из полей, разделенных символами `:'. Строки, начинающиеся с символа `#', считаются комментариями.
Первое поле описания терминала содержит имя терминала, под которым он известен в системе. Имен может быть несколько и они разделяются символами `|'. Первое имя должно содержать не более 2 символов (некоторые команды отводят под имя устройства 16-разрядное слово и работают с именем как с числовым идентификатором). Второе имя определяет наиболее распространенное сокращение полного наименования данного терминала и не может содержать пробелов. Последнее имя соответствует полному официальному названию устройства и, разумеется, может содержать пробелы.
Все остальные поля содержат набор описателей, в которых содержится информация о функциональных возможностях терминала, способах редактирования информации на экране терминала и описание клавиатуры.
Существует три типа описателей:
bool | Логический. Указывает на то, что данное устройство обладает некоторым свойством. |
num | Числовой. Задает размер экрана терминала, продолжительность задержек при передаче информации и т.д. |
str | Символьный. Определяет последовательность кодов, вывод которых приводит к выполнению какой-либо специфичной для данного устройства функции. |
Для упрощения кодирования символьных описателей предусмотрено несколько вариантов обозначения неграфических символов. Например, последовательность \E отображается в код 033 (смена режима интерпретации), ^M - в символ возврата каретки (код 015), последовательность \n\r\t\b\f отображается в набор кодов 012, 015, 011, 010 и 014. Наконец, код может быть задан в виде трех восьмеричных цифр после символа `\', а символы `^' и `\' могут быть заданы как \^ и \\. Если в описатель требуется вставить символ `:', он может быть задан в восьмеричном виде как \072.
Хотя системе известен достаточно большой набор характеристик терминалов, использовать его целиком не обязательно. Редактор текстов, например, требует для своей работы только описание способов перемещения курсора и некоторой информации об алфавитном наборе устройства. Дополнительная информация может использоваться для оптимизации и ускорения вывода, и для организации более удобной работы с терминалом. Следует отметить, что данный набор описателей может быть недостаточен для описания всех существующих терминалов.
co#<число> | Число колонок на экране терминала. |
li#<число> | Число строк, если терминал является видеотерминалом. |
hc | Признак того, что терминал является печатающим устройством (например, телетайп). |
UC | Признак задается, если терминал имеет только прописные буквы. |
KI | Говорит о том, что терминал имеет русские буквы. |
IK | Совместно с KI указывает на то, что терминал с русскими буквами имеет клавиатуру, режим которой русский/латинский переключается непосредственно от клавиш рус/лат (которые одновременно вырабатывают соответствующие коды), если клавиатура переключается по символам рус/лат, приходящим из линии (а клавиши просто генерируют соответствующий код), то этот признак должен отсутствовать. |
os/td> | Терминал допускает наложение символов. |
am | Если курсор при достижении последней колонки автоматически переходит в начало следующей строки, то задается признак am. |
Следующие описатели описывают инициализацию терминала и включение/выключение специального режима функциональной клавиатуры.
is=<строка> | Задает последовательность символов, которую необходимо выдать для приведения терминала в начальное состояние (инициализация терминала). |
if=<строка> | Задает имя файла, в котором содержится инициализирующая последовательность символов, если она достаточно длинна. Если заданы оба описателя, то сначала печатается строка is, а затем - файл if. Это используется, когда именем файла является /usr/lib/tabset/std, но строка начальной установки должна инициировать предварительное гашение табуляторов. |
fs=<строка> | Последовательность, которая выдается в конце работы с терминалом. |
ks=<строка> | Включение специального режима функциональной клавиатуры. Эта последовательность выдается, например, при входе в редактор. |
ke=<строка> | Выключение специального режима работы клавиатуры. |
%d | то же, что и для программы printf; координаты начала экрана считаются нулевыми; |
%2 | аналогично %2d в printf; |
%3 | аналогично %3d; |
%. | аналогично %c; |
%+х | сложить код символа x со значением координаты, полученное значение выводится по формату "%."; |
%<xy | если значение меньше x, прибавить y, полученное значение выводится по формату "%."; |
%r | обратный порядок задания номеров строки и колонки, (сначала номер колонки, затем номер строки); |
%i | номера строки и позиции увеличиваются на единицу, исходной точкой считается 1; |
%% | дает один символ %; |
%n | выполняется операция исключающее или, в которой участвуют номер строки и позиции и число 0140. |
Существуют также однопараметрические описатели ch и cv для раздельного горизонтального и вертикального позиционирования курсора.
up=<строка> | Курсор вверх (на одну позицию); |
do=<строка> | Курсор вниз; |
nd=<строка> | Курсор вправо; |
bc=<строка> | Курсор влево; |
bs | Признак того, что для перемещения на одну позицию влево служит код \b; |
ho=<строка> | Курсор в начальное положение; |
ll=<строка> | Курсор в нижний левый угол экрана. |
Считается некорректным перевод курсора через верхнюю или левую границы экрана.
al=<строка> | Вставка пустой строки, текущая строка и весь текст ниже нее сдвигаются на одну строку вниз; курсор остается на месте. Считается, что при выдаче команды курсор находится на первой колонке. |
dl=<строка> | Уничтожить строку, сдвинув текст ниже нее на 1 строку вверх; |
Следующие описатели указываются, если терминал умеет прок- ручивать текст на экране вверх или вниз.
sr=<строка> | Прокрутить текст вниз; может выводиться только в первой строке; |
sf=<строка> | Прокрутить текст вверх; может выводиться только в последней строке. |
Если терминал запоминает строки, вышедшие за верхнюю гра- ницу экрана, вводится описатель db; если строки сохраня- ются при выходе за нижнюю границу экрана, указывается da. Эти признаки говорят о том, что при прокручивании экрана на нем могут появиться из-за границы экрана старые строки.
Следующие описатели определяют последовательности команд для стирания фрагментов текста.
cl=<строка> | Стирание всего экрана. |
ce=<строка> | Стирание части текущей строки, начиная от текущей колонки и до конца строки; |
cd=<строка> | Стирание части экрана, начиная с текущей строки и до конца; может выдаваться только при положении курсора в первой колонке строки. |
Наконец, режим исключения символов может быть задан с помощью описателей dm, ed, dc, определяющих, соответственно, установку или блокирование режима исключения и способ исключения одного символа.
Наиболее типичные операции вставки-исключения символов применимы к символам текущей строки и просто сдвигают все другие символы, вплоть до конца строки. Некоторые терминалы различают пробелы, введенные с клавиатуры, и пробелы, которые присутствуют на экране, но не были введены пользователем. В этом случае сдвиг символов при выполнении операций вставки или исключения осуществляется лишь до первого невведенного пробела, который либо уничтожается, либо дополняется еще одним таким же пробелом. Для таких терминалов должен быть задан описатель in.
Если терминал имеет командные последовательности, устанавливающие и блокирующие режим визуального выделения текста, эти последовательности могут быть заданы описателями so и se. Если терминал допускает несколько способов визуального выделения, например, инвертирование фона изображения, мерцание или подчеркивание (уменьшение яркости не считается визуальным выделением), - то более предпочтительным является инвертирование фона.
Коды, инициирующие и блокирующие подчеркивание могут быть заданы, соответственно, как описатели us и ue. Если терминал имеет код для подчеркивания одного текущего символа и перемещения курсора на одну позицию вправо, этот код может быть задан в описателе uc. Если код подчеркивания не вызывает перемещение курсора вправо, то после него записывается код курсор вправо.
Если во время выполнения программы, осуществляющей адресацию курсора, терминал должен быть переведен в специальный режим, коды установки и блокирования этого режима могут быть заданы как описатели ti и te. Необходимость в этом возникает, например, при работе с терминалами, имеющими внутреннюю память емкостью более одной страницы. Если адресация курсора осуществляется относительно некоторой ячейки памяти, а не относительно позиции на экране, то для правильной адресации курсора требуется, чтобы терминал всегда воспроизводил на экране некоторый фиксированный участок внутренней памяти, так называемое окно, размер которого должен соответствовать размеру экрана.
Если терминал правильно воспроизводит символы с подчеркиванием и не требует для них специальных кодов даже несмотря на то, что не допускает наложения символов в одной позиции, в его описании следует указать ul. Если наложенные символы могут быть стерты с помощью пробела, это должно быть указано с помощью описателя eo.
Коды, которые передаются при нажатии клавишей курсор влево, курсор вправо, курсор вверх, курсор вниз, курсор в начало, чистка экрана, вставить символ, исключить символ, вставить строку, убрать строку указываются, соответственно, описателями kl, kr, ku, kd, kh, ER, IC, DC, IL, DL. Если существуют специальные функциональные клавиши f0, f1, ..., f9, то коды, которые передаются при их нажатии, могут быть указаны как k0, k1, ..., k9. Если эти клавиши имеют маркировку, отличную от принятых по умолчанию обозначений f0, ..., f9, их обозначения могут быть указаны с помощью описателей l0, ..., l9. Если цифровая клавиатура может генерировать управляющие последовательности символов, эти последовательности обозначаются как k0 - k9, k., k-. Если существуют другие клавиши, нажатие которых вызывает передачу такого же кода, как и для определенной для данного терминала специальной функции, - например гашение экрана , то в качестве описателя ko в файле функциональных возможностей терминала могут быть указаны соответствующие 2-символьные коды: например, строка вида :ko=cl,ho,sf,sb: сообщает о том, что терминал имеет клавиши: гашение, возврат в исходное положение, прокручивание сверху вниз и прокручивание снизу вверх, при нажатии которых передаются те же коды, что были указаны в описателях cl, li, sf и sb.
Если выполняемые данным терминалом операции табуляция требуют дополнения текста символами-заполнителями или если в качестве символа табуляция используется символ, отличный от \t, это может быть указано с помощью описателя ta.
Если терминал отображает символ возврат каретки в пару символов возврат каретки - перевод строки и игнорирует следующий символ перевод строки, то для него должен быть задан описатель xr.
Если существуют два очень похожих терминала, один из них может быть определен через описание другого. Для этого сначала описываются свойства, отличающие данный терминал от базового, а в конце описания указывается описатель tc, который задает имя базового типа. Суммарная длина двух элементов описания не должна превышать 1024 символов. Поскольку подпрограммы termlib просматривают элемент описания слева направо и описатель tc заменяется соответствующим элементом (описанием аналога), указанные слева описатели накладываются на описатели аналогичного терминала. При необходимости характеристика может быть аннулирована с помощью строки вида xx@, где xx - исключаемый описатель.
Например, элемент вида:
v3|vt340:cu@:cm@:dN#4:UC:KI:nb:tc=vdt52100c:
описывает терминал VIDEOTON-340, который отличается от терминала VDT-52100c отсутствием адресации курсора и изображаемого символа забой, режимом больших букв и наличием русских букв, а в остальном с ним совпадает. Описание терминалов по аналогии используется также для определения разных режимов работы терминала или для учета различных пожеланий пользователя.
Cf=<строка> | Строка в формате, аналогичном cm, но от одного
параметра (для функции tgoto), описывающая
включение основного цвета по его номеру. s=tgoto( Cf_string ,0 ,НомерЦвета ); |
||||||||||||||||
Cb=<строка> | Строка в том же формате, описывающая включение цвета фона по его номеру. | ||||||||||||||||
Nf#<число> | Числовой описатель, указывающий число основных цветов. Если описатель отсутствует - терминал не цветной. | ||||||||||||||||
Nb#<число> | Числовой описатель, указывающий число цветов фона. | ||||||||||||||||
C1 | Признак, указывающий, что терминалу можно установить ЛИБО основной ЛИБО фоновый цвет, но не оба вместе (вероятно, цветной фон получается только при инверсии изображения (описатель mr)). | ||||||||||||||||
C2 | Признак, указывающий, что терминал допускает
только совместную установку основного и фонового
цвета. В этом случае описывается только
Cf, но от двух параметров: s=tgoto( Cf_string,Фон ,ОснЦвет ); |
||||||||||||||||
Mf=<строка> Mb=<строка> |
Описатели, описывающие соответствие номера
цвета реальному цвету.
Если мы устанавливаем цвет с номером color = tputs( tgoto( Cf_string,0,color ),1,putchar ); то реально установится цвет, чей код есть Коды цветов взяты в порядке, соответствующем цветам на персональном компьютере IBM PC.
|
IBM PC | ANSI standard |
---|---|
Mf=0123456789ABCDEF Mb=01234567 |
Mf=042E153F |
Существуют еще описатели, используемые редактором red(1). Эти описатели определяют 4 режима выделения (цветосочетания).
m1=<строка> | Цвет рамки. |
m2=<строка> | Цвет сообщения об ошибках. |
m3=<строка> | Цвет приглашения. |
m4=<строка> | Цвет разных информационных сообщений. |
Описатель me должен выключать все эти режимы выделения.
Описатели g1-g6 возвращают массивы символов. Чтобы вывести псевдографический символ следует включить псевдографику, вывести нужные символы (индексируя строки от g1 до g6), выключить псевдографику. Пробел в строке означает, что данный псевдографический символ отсутствует.
Старые описатели
--- --- ---
|8 |9 10| Tl Tj Tr
--- Hl
| | | 0
|-- -+- --| Lj Cj Rj
|5 |6 7| | Vl
1|
|2 |3 4| | Bl Bj Br
--- --- ---
g1=<строка> | Простые линии. |
g2=<строка> | Двойные линии. |
g3=<строка> | Двойные горизонтальные, простые вертикальные. |
g4=<строка> | Простые горизонтальные, двойные вертикальные. |
g5=<строка> | Стрелки соответственно таблице: |
-> | <- | вверх | вниз | <--> | вверх-вниз |
---|---|---|---|---|---|
0 | 1 | 2 | 3 | 4 | 5 |
> | < | вверх | вниз |
---|---|---|---|
6 | 7 | 8 | 9 |
g6=<строка> | Квадраты (блочная псевдографика) соответственно таблице: |
## .. #. .# ## %% +
.. ## #. .# ## %% /I\ (спецсимвол)
(светлый)
0 1 2 3 4 5 6
Имя | Тип Зап. | Описание |
---|---|---|
BT | str | Клавиша обратной табуляции (для red). |
C1 | bool | Только основной цвет (нет фонового). |
C2 | bool | Основной и фоновый цвета устанавливаются одновременно. |
CS | num | Тип переключения регистров РУС/ЛАТ. |
CY | bool | Терминал имеет кириллицу. |
Cb | str | Установка цвета фона по номеру. |
Cf | str | Установка основного цвета по номеру. |
DC | str | Код клавиши "исключить символ" (для red). |
DL | str | Код клавиши "исключить строку" (для red). |
ER | str | Код клавиши "очистка экрана" (для red). |
IC | str | Код клавиши "вставить символ" (для red). |
IL | str | Код клавиши "вставить строку" (для red). |
LC | bool | Терминал имеет прописные и строчные буквы. |
Mb | str | Карта цветов фона. |
Mf | str | Карта основных цветов. |
Nb | num | Число цветов фона. |
Nf | num | Число основных цветов. |
PH | num | Тип прямо адресуемой видеопамяти. |
UC | bool | Терминал имеет только прописные буквы. |
ae | str p | Конец работы с альтернативным шрифтовым набором (курсивом). |
al | str p* | Вставить пустую строку. |
am | bool | При достижении конца текущей строки курсор автоматически перемещается в начало следующей строки. |
as | str p | Начало работы с альтернативным шрифтовым набором (курсивом). |
bc | str | Перевод курсора на одну позицию назад (если не \b); |
bl | str | Звуковой сигнал (если не \7). |
bs | bool | Вывод символа \b приводит к перемещению курсора на одну позицию назад. |
bt | str p | Обратная табуляция. |
bw | bool | Перемещение курсора на одну позицию назад из первой позиции строки вызывает переход в конец предыдущей строки. |
cd | str p* | Стирание информации от текущей позиции до конца экрана. |
ce | str p* | Стирание информации от текущей позиции до конца строки. |
ch | str p | Адресация курсора в пределах текущей строки (по горизонтали). |
cl | str p | Очистка экрана. |
cm | str p | Адресация курсора. |
co | num | Число позиций в строке на экране. |
cr | str p* | Возврат в начало строки (если не \r); |
cs | str p | Изменение области роллирования на экране (параметры аналогичны cm); |
ct | str | Стирание всех маркеров табуляции. |
cu | str | Код символа - альтернативного курсора (яркой отметки); |
cv | str p | Адресация курсора по вертикали. |
cw | str | Установка окна для вывода. |
dB | num | Задержка в миллисекундах для символа \b (BS). |
dC | num | Задержка в миллисекундах для символа \r (CR). |
dF | num | Задержка в миллисекундах для символа \f (FF). |
dN | num | Задержка в миллисекундах для символа \n (NL). |
dT | num | Задержка в миллисекундах для символа \t (TAB). |
da | bool | Терминал сохраняет информацию о строках, сдвинутых вверх за границу экрана. |
db | bool | Терминал сохраняет информацию о строках, сдвинутых вниз за границу экрана. |
dc | str p* | Исключить символ в текущей позиции. |
dl | str p* | Удалить текущую строку. |
dm | str | Переход в режим удаления символов. |
do | str p | Перевод курсора вниз на одну строку. |
ds | str | Отменить информационную строку (строку состояния дисплея). |
ec | str | Очистить символ. |
ed | str | Конец режима удаления символов. |
ei | str | Конец режима вставки символов. |
eo | bool | Пробел стирает символ в текущей позиции. |
eo | bool | Наложения стираются пробелом. |
es | bool | В информационной строке можно пользоваться символом escape (\33). |
f, | str | "," в режиме альтернативной клавиатуры. |
f- | str | "-" в режиме альтернативной клавиатуры. |
f. | str | "." в режиме альтернативной клавиатуры. |
f0 | str | "0" в режиме альтернативной клавиатуры. |
f1 | str | "1" в режиме альтернативной клавиатуры. |
f2 | str | "2" в режиме альтернативной клавиатуры. |
f3 | str | "3" в режиме альтернативной клавиатуры. |
f4 | str | "4" в режиме альтернативной клавиатуры. |
f5 | str | "5" в режиме альтернативной клавиатуры. |
f6 | str | "6" в режиме альтернативной клавиатуры. |
f7 | str | "7" в режиме альтернативной клавиатуры. |
f8 | str | "8" в режиме альтернативной клавиатуры. |
f9 | str | "9" в режиме альтернативной клавиатуры. |
ff | str *p | Если терминал является печатающим устройством, команда прогона листа (по умолчанию \f). |
fs | str | Возвратиться из информационной строки (после ts). |
g1 | str | Карта псевдографических символов тонких рамок. |
g2 | str | Карта псевдографических символов двойных рамок. |
g3 | str | Карта псевдографических символов двойных вертикальных и тонких горизонтальных рамок. |
g4 | str | Карта псевдографических символов тонких вертикальных и двойных горизонтальных рамок. |
g5 | str | Карта псевдографических стрелок. |
g6 | str | Карта псевдографических блоков. |
ge | str | Конец режима псевдографики. |
gn | bool | Неопределенный тип линии (модем). |
gs | str | Включить режим псевдографики. |
gt | str | Карта графических символов (для red). |
hR | str | Имя help-файла для red. |
hc | bool | Терминал является печатающим устройством. |
hd | str | Переход на 1/2 строки вниз. |
ho | str | Перевод курсора в первую позицию первой строки. |
hs | bool | Терминал имеет информационную строку (обычно, 25 строка). |
hu | str | Переход на 1/2 строки вверх. |
hz | bool | Терминал Hazeltine не печатает ~, использовать ~ нельзя. |
ic | str p | Вставить символ в текущей позиции. |
if | str | Для инициализации терминала выдать на него содержимое указанного файла. |
im | str p | Переход в режима вставки символов. |
in | bool | В режиме вставки символы пробел и пусто различаются. |
ip | str p* | Символ, за которым следует указанная последовательность кодов вставляется в текущей позиции. |
is | str | Последовательность кодов для инициализации терминала. |
it | str | Начальные табуляции каждые n позиций. |
k0 | str | Функциональная клавиша 0. |
k1 | str | Функциональная клавиша 1. |
k2 | str | Функциональная клавиша 2. |
k3 | str | Функциональная клавиша 3. |
k4 | str | Функциональная клавиша 4. |
k5 | str | Функциональная клавиша 5. |
k6 | str | Функциональная клавиша 6. |
k7 | str | Функциональная клавиша 7. |
k8 | str | Функциональная клавиша 8. |
k9 | str | Функциональная клавиша 9. |
kA | str | Клавиша вставить строку. |
kB | str | Клавиша обратной табуляции. |
kC | str | Клавиша очистки экрана. |
kD | str | Клавиша удаления символа. |
kE | str | Клавиша очистки до конца строки. |
kF | str | Клавиша роллирования вперед. |
kI | str | Клавиша вставки символа (INSERT). |
kL | str | Клавиша уничтожения строки. |
kN | str | Клавиша следующая страница. |
kP | str | Клавиша предыдущая страница. |
kR | str | Клавиша роллирования назад. |
kS | str | Клавиша очистки до конца экрана. |
kT | str | Клавиша установки табуляции. |
ka | str | Клавиша очистки всех табуляций. |
kb | str | Код клавиши возврат на шаг. |
kd | str | Код клавиши курсор вниз. |
ke | str | pВыключение режима дополнительной клавиатуры. |
kh | str | Код клавиши home; |
kl | str | Код клавиши курсор влево; |
km | bool | Терминал имеет клавишу meta-shift. |
kn | num | Число клавиш функциональной клавиатуры, отличных от "0" - "9", ".", "-". |
ko | str | Описание клавиш функциональной клавиатуры, отличных от "0" - "9", ".", "-". |
kr | str | Код клавиши курсор вправо. |
ks | str | Включение режима дополнительной клавиатуры. |
kt | str | Клавиша очистки маркера табуляции. |
ku | str | Клавиша стрелка вверх. |
l0 | str | Название функциональной клавиши 0. |
l1 | str | Название функциональной клавиши 1. |
l2 | str | Название функциональной клавиши 2. |
l3 | str | Название функциональной клавиши 3. |
l4 | str | Название функциональной клавиши 4. |
l5 | str | Название функциональной клавиши 5. |
l6 | str | Название функциональной клавиши 6. |
l7 | str | Название функциональной клавиши 7. |
l8 | str | Название функциональной клавиши 8. |
l9 | str | Название функциональной клавиши 9. |
le | str | Перевод курсора на одну позицию влево. |
li | num | Число строк на экране терминала. |
ll | str | Перевод курсора в первую позицию последней строки. |
lm | num | Число строк памяти дисплея. |
m1 | str | Атрибуты для рамки (для red). |
m2 | str | Атрибуты для диагностик (для red). |
m3 | str | Атрибуты для приглашения (для red). |
m4 | str | Атрибуты для инф.сообщений (для red). |
mb | str | Включение режима мигающих символов. |
md | str | Включение режима ярких символов. |
me | str | Отмена всех режимов выделения текста ("mb", "md", "ml", "mr", "us", "so"). |
mh | str | Включение режима тусклых символов. |
mi | bool | Возможность перемещения курсора в режиме вставки текста. |
mk | str | Включение режима невидимых символов. |
ml | str | Защита памяти над курсором. |
mm | str | Включение режима метасимволов. |
mo | str | Выключение режима метасимволов. |
mp | str | Включение режима защиты. |
mr | str | Включение режима инверсных символов. |
ms | bool | Возможность перемещения курсора в режиме выделения текста. |
mu | str | Разблокирование памяти (после ml). |
nb | bool | Запрет использования символа bell (код \7). Необходим, если данный символ отображается на экране. |
nc | bool | Запрет использования символа \r, неправильно работает возврат каретки. |
nd | str | Перевод курсора на одну позицию вправо. |
nl | str p* | Переход в начало следующей строки (если не \n). |
ns | bool | Терминал не имеет роллирования. |
nw | str | Команда CR-LF. |
os | bool | Терминал допускает наложение символов. |
pb | num | Мин.скорость, требующая заполнителей. |
pc | str | Код символа-заполнителя (если не \0). |
pf | str | Выключение печатающего устройства. |
po | str | Включение печатающего устройства. |
ps | str | Печать содержимого экрана. |
pt | bool | Терминал имеет программируемый механизм установки табуляционной сетки. |
rc | str | Восстановить положение курсора (после sc). |
rf | str | Для отмены инициализации выдать содержимое указанного файла. |
rs | str | Для отмены инициализации выдать указанную последовательность символов. |
sc | str | Запомнить текущее положение курсора. |
se | str | Конец стандартного режима выделения текста. |
sf | str p | Прокрутить текст вперед. |
sg | num | Число символов-заполнителей для команд so и se. |
so | str | Установить стандартный режим выделения текста. |
sr | str p | Прокрутить текст назад (снизу вверх). |
st | str | Установить табуляцию в текущей позиции. |
sw | str | Установить окно (область вывода на терминал). Формат данного описателя слишком сложен и здесь не приводится. |
ta | str p | Команда табуляции (если не \t). |
tc | str | Дополнить описание свойств терминала из описания устройства с указанным именем. Данное описание должно быть последним в записи. |
te | str | Отменить режим адресации курсора (cm). |
ti | str | Войти в режим адресации курсора. |
ts | str | Перейти в информационную строку. |
uc | str | Подчеркнуть один символ. |
ue | str | Конец режима подчеркивания. |
ug | num | Число символов-заполнителей для команд us и uc. |
ul | bool | Терминал имеет возможность подчеркивания символов. |
up | str | Перевод курсора на строку вверх. |
us | str | Включить режим подчеркивания выводимых символов. |
vb | str | Видимый аналог звукового сигнала. (Перевод терминала в режим телетайпа.) |
ve | str | Выключение экранного режима. |
vi | str | Включение экранного режима. |
vs | str | Перевод терминала в экранный режим. |
vt | num | Число виртуальных терминалов. |
ws | num | Длина строки состояния. |
xb | bool | Терминал Beehive (f1=ESC, f2=CTRL/C). |
xn | bool | Когда напечатан последний символ в строке, переход на следующую строку осуществляется не сразу, а только после печати еще одного символа. Этот флаг употребляется только вместе с am. |
xo | bool | Терминал использует (CTRL/Q, CTRL/S). |
xr | bool | Код \r действует как \n\r. |
xs | bool | Выделение сохраняется при наложении. |
xt | bool | Запрет использования табуляции (\t) (вывод кода табуляции изменяет информацию на экране). |