Настройка и работа в Linux

         

Alock и ashift


Следующие два модификатора - alock (Alt Group Lock) и ashift (Alt Group Shift). Они действуют на другие клавиши одинаково, причем, на все клавиши. Разница только в том, что alock "фиксирующаяся" (как clock и nlock), а ashift - "не фиксирующаяся" (как и обычный shift).

Действие же этих модификаторов заключается в том, что в состоянии AltGroup syscons к скан-коду каждой клавиши добавляет постоянное смещение (а именно - 128), а только после этого подбирает подходящее значение из таблицы "раскладки клавиатуры".

То есть каждая клавиша имеет как бы два разных скан-кода, один в обычном состоянии и другой скан-код (на 128 больше) в состоянии AltGroup. Таким образом получается для того же набора физических кнопок еще одна раскладка - "альтернативная".

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

Таким образом, руссифицированная раскладка отличается от обычной тем, что в нее дописывается еще столько же строчек (сколько в обычной) с номерами скан-кодов больше на 128. При этом, для "небуквенных" клавиш все значения обычно такие же, как и в первой части таблицы, а для "буквенных" подставляются соответствующие коды русских букв. (Надо отметить, что в дистрибутиве FreeBSD есть раскладки для кодировок koi8 и cp866. Если вам захочется иметь раскладку для cp1251 ее можно изготовить самостоятельно).

Естественно, что по умолчанию эти два модификатора не назначены ни на какие клавиши. Но если загружается одна из русских раскладок, то alock присвоена клавише [Caps Lock], но только в первой колонке. То есть в таком качестве [Caps Lock] выступает только тогда, когда не нажат ни один из основных модификаторов (shift, ctrl или alt). Если вас это не устраивает и вы хотели бы, чтобы [Caps Lock] была именно CapsLock'ом, можно "подвесить" alock на любую другую клавишу или комбинацию клавиш (например "два Shift'а" или "Ctrl+Shift"). Подробнее можете посмотреть в "Несколько примеров изменения назначения клавиш"..

Значение ashift в стандартных раскладках отсутствует (даже в русских). Если она вам нужна, выберите подходящую для нее клавишу и отредактируйте соответствующий файл "раскладки клавиатуры".



Содержание раздела