ENGLISH | KOI | WIN | ALT | ISO
Мои программы

Программа kbdcontrol

Программа kbdcontrol служит для управления параметрами syscons, которые относятся к клавиатуре.

Полное ее описание можно посмотреть в соответствующем man'уале (man kbdcontrol).

Я только опишу ее основные функции.

Загрузка таблицы раскладки клавиатуры.

Для загрузки раскладки клавиатуры служит ключ -l (наверное,load)

kbdcontrol -l "имя файла раскладки"

Если вы не укажете полный путь для имени файла, а просто короткое имя (напрмер - mykbd), то kbdcontrol будет искать

  • файл mykbd в текущей директории
  • файл mykbd.kbd в текущей директории
  • файл mykbd.kbd в директории /usr/share/syscons/keymaps
естественно, загрузит первый, который найдет.

Кстати, kbdcontrol может выполнить и обратную операцию - напечатать вам ту раскладку, которая в данный момент загружена в syscons. Для этого есть ключ -d (dump).

Изменение последовательностей, которые выдают клавиши fkey.

Программа kbdkontrol позволяет изменит последовательность кодов, связанных с "функциональными клавишами". Для этого предназначен ключ -f (function key)

kbdcontrol -f "номер fkey'я" "строка"

Поскольку эта команда (точнее, этот ключ) "связывает" только одну конкретную "функциональную клавишу" с соответствующей последовательностью кодов, то для изменения нескольких fkey, можно несколько раз использовать ключ -f в одной строке, например

kbdcontrol -f 1 ^[[M -f 2 ^[[N

Замечу, что обычно последовательности, "навешиваемые" на fkey'и начинаются с кода Esc (27). Если вы попытаетесь ввести этот код в командной строке, у вас, скорее всего, ничего не получится. Система попытается сразу обработать этот код, а не ждать пока вы введете все команду.

Поэтому выполнять такую "перезагрузку" кодов лучше всего из какого-нибудь командного файла. Только не забудьте, что вы должны вписать в команду именно код 27, а не два знака - "^" и "[" (а уж как он будет выглядеть, зависит от вашего редактора).

Существует также ключ (-F), с который "сбрасывает" все последовательности в их "стандартное" значение. То есть, устанавливает те последовательности, котрые были "зашиты" в syscons при сборке.

Изменение размера буфера терминала.

По-моему, было бы логично, чтобы это изменение делала программа vidcontrol. Но так уж определил автор - размер буфера терминала делается программой kbdcontrol с ключем -h (history buffer)

kbdcontrol -h "размер буфера в строках"

Заметьте, что если указать размер буфера меньше чем размер самого экрана, то просто не будет никакого буфера. То есть, все выводимые строчки будут нормально отображаться на экране, но запоминать syscons ничего не будет.

Другие команды

Кроме описанных выше действий, kbdkontrol можно использовать для изменения параметров "автоповтора" клавиатуры и для изменения параметров "пищалки" (звука, который издает терминал при выводе кода Bell - 7).

Подробнее о ключах и параметрах для этих команд смотрите man kbdcontrol.

Общие замечания.

Большинство параметров, которые меняет kbdcontrol влияет сразу на все "виртуальные терминалы". Исключение составляют только параметры "пищалки" и "размер буфера терминала".