Вход/Регистрация
Разработка приложений в среде Linux. Второе издание
вернуться

Троан Эрик В.

Шрифт:

Таблица 21.6. Компоненты цветовой палитры

Число Что определяет
1 Элемент палитры, который нужно переопределить.
2*16+3 Значение красного компонента элемента палитры.
4*16+5 Значение зеленого компонента элемента палитры.
6*16+7 Значение синего компонента элемента палитры.

Последовательности изображения символов, указанные командами

CSIm
, могут принимать в произвольном порядке до 16 параметров, перечисленных в табл. 21.7. Параметры применяются к терминалу в том порядке, в котором они передаются. Таким образом, если
0
(установка стандартного изображения) сопровождается
1
(для установки полужирного шрифта), то результатом будет полужирный символ (а не мерцающее негативное видеоизображение) или подчеркнутый символ в зависимости от предыдущих установок изображения.

Таблица 21.7. Параметры изображения символов

par Описание
0 Стандартное изображение: средняя интенсивность, без подчеркивания, без негативного изображения, без мерцания, с обычной цветовой схемой (белое на черном, если не установлен другой способ при помощи последовательности сохранения setterm
^[[]8
).
1 Интенсивность — насыщенная.
2 Интенсивность — матовая.
4 Включается подчеркивание.
5 Включается мерцание.
7 Включается негативное видеоизображение.
10 Выбирается исходный шрифт (ISO latin 1), при этом не отображаются управляющие символы, сбрасывает бит 8 в выводе.
11 Выбирается альтернативный шрифт (IBM Codepage 437), при этом управляющие символы отображаются как графические данные, сбрасывает бит 8 в выводе.
12 Выбирается альтернативный шрифт (IBM Codepage 437), при этом управляющие символы отображаются как графические данные, оставляет бит 8 в выводе.
21 22 Интенсивность — стандартная.
24 Отключается подчеркивание.
25 Отключается мерцание.
27 Отключается негативное видеоизображение.
30-37 Устанавливается цвет переднего плана par||30; см. табл. 21.5.
38 Включается подчеркивание и используется стандартный цвет текста.
39 Отключается подчеркивание и используется стандартный цвет текста.
40-47 Устанавливается цвет фона par||40; см. табл. 21.5.
49 Используется стандартный цвет фона.

Некоторое отношение к последовательностям изображения символов имеют последовательности режимов. Существует два типа режимов: режимы ANSI и внутренние режимы DEC. Последовательность

СSIh
устанавливает режимы ANSI, описанные в табл. 21.8; последовательность
CSIl
сбрасывает их. В последовательность может входить более одного параметра. Последовательность
CSI?h
определяет внутренние режимы DEC, перечисленные в табл. 21.9; последовательность
CSI?l
сбрасывает их. Также может приниматься более одного параметра.

Таблица 21.8. Режимы ANSI

par Описание
3 Отображаются управляющие символы.
4 Режим вставки.
20 Режим CRLF (при получении символа новой строки выполняется возврат каретки).

Таблица 21.9. Внутренние режимы DEC

par Описание
1 Клавиши управления курсором работают как клавиши приложения; в режиме приложения к ним добавляется префикс
^[O
вместо обычного
^[[
.
3 На данный момент не реализован; в будущем предназначен для переключения между режимами 80 и 132 колонки.
5 Весь экран переводится в режим негативного изображения.
6 Устанавливается режим начала отсчета DEC, при котором принимаются области прокрутки; перемещается в начало отсчета (текущей области прокрутки, если она задана).
7 Устанавливается режим автоматического перехода на новую строку (по умолчанию), при котором продолжается ввод текста с новой строки, когда курсор достигает конца текущей строки. Если данный режим выключен, то лишние символы печатаются поверх самого правого символа текущей строки.
8 Клавиатура переводится в режим повторения символов (включен по умолчанию).
9 Режим отчета мыши 1 (поддержка может предоставляться внешней программой).
25 Курсор становится видимым (включен по умолчанию).
1000 Режим отчета мыши 2 (поддержка может предоставляться внешней программой).

Последовательности setterm представляют собой набор последовательностей CSI с управляющим символом

]
. Они перечислены в табл. 21.10.

Таблица 21.10. Консольные последовательности setterm

par Описание
1 Устанавливает цвет для представления атрибута подчеркивания параметра par2.
2 Устанавливает цвет для представления атрибута тусклости параметра par2.
8 Текущие атрибуты setterm сохраняются как значения по умолчанию, тем самым они становятся стандартными атрибутами изображения символов.
9 Устанавливает интервал гашения экрана на par2 минуты, но не более чем на 60 минут. Если параметр par2 равен нулю, то гашение экрана блокируется.
10 Частота звонковой сигнализации консоли приравнивается к par2 Гц или к стандартному шагу, если параметр par2 не определен.
11 Длительность звукового сигнала консоли приравнивается к par2 миллисекундам, если параметр par2 указан, но не более чем 2000. Если par2 не задан, то восстанавливается стандартная длительность.
12 Если для консоли par2 выделена память, то консоль par2 становится активной (см. главу 20).
13 Восстанавливает экран после гашения.
14 Интервал выключения питания VESA приравнивается к par2 минутам, но не более чем 60 минут. Если параметр par2 равен нулю, то отключение питания VESA блокируется.

Сообщение консоли того, что она должна отображать — далеко не все; вы также обязаны распознавать последовательности нажатия клавиш и знать, к каким клавишам они привязаны. Некоторые из этих последовательностей определены в базе данных

terminfo
, некоторые — нет. Кроме этого, клавиатура является модальной для увеличения разнообразия возможностей. В режиме приложения клавиши курсора порождают другие коды. Как показано в табл. 21.9, к ним добавляется префикс
^[О
вместо
^[[
. Это необходимо для поддержки унаследованных приложений, в которых предполагается, что они обращаются к терминалам DEC.

Последовательности нажатия клавиш описаны в табл. 21.11. Обратите внимание на то, что в нумерации функциональных клавиш имеются пропуски. Это спланировано для того, чтобы пользователи клавиатур, у которых нет клавиш <F11> и <F12>, не были ущемлены.

Таблица 21.11. Кодирование функциональных клавиш

Последовательности нажатия клавиш Клавиша (клавиши)
^[[[А
<F1>
^[[[В
<F2>
^[[[С
<F3>
^[[[D
<F4>
^[[[Е
<F5>
^[[17~
<F6>
^[[18~
<F7>
^[[19~
<F8>
^[[20~
<F9>
^[[21~
<F10>
^[[23~
<F11>, <Shift+F1>, <Shift+F11>
^[[24~
<F12>, <Shift+F2>, <Shift+F11>
^[[25~
<Shift+F3>
^[[26~
<Shift+F4>
^[[28~
<Shift+F5>
^[[29~
<Shift+F6>
^[[31~
<Shift+F7>
^[[32~
<Shift+F8>
^[[33~
<Shift+F9>
^[[34~
<Shift+F10>
^[[А
<Стрелка вверх>
^[[D
<Стрелка влево>
^[[В
<Стрелка вниз>
^[[С
<Стрелка вправо>
^[[1~
<Home>
^[[2~
<Insert>
^[[3~
<Delete>
^[[4~
<End>
^[[5~
<Page Up>
^[[6~
<Page Down>

21.4. Прямой вывод на экран

В некоторых случаях наличие одной только способности выводить символы на экран не является достаточным. Частично это связано с невозможностью определить текущее состояние экрана. В системе Unix принята стандартная практика — состояние экрана игнорируется. Если нужно, вы можете задать настройки экрана, при появлении необходимости внести в них изменения, после чего полностью перерисовывать экран всякий раз, когда этого требует пользователь (как правило, нажатием комбинации

^L
). Можно планировать и другие применения.

  • Читать дальше
  • 1
  • ...
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: