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

Clock и nlock


Следующие два модификатора - clock (CapsLock) и nlock (NumLock). Их влияние на другие клавиши по сути одинаково. Отличаются они только "областью действия". Как вы можете заметить, в файлах "раскладки клавиатуры", кроме восьми колонок с кодами, есть еще одна колонка, озаглавленная "lock state". Она и определяет - подвержена ли соответствующая кнопка действию clock или nlock.

  • Если в этой колонке стоит буква "O", то клавиша никак не реагирует ни на нажатие clock, ни на nlock. Обычно, это клавиши с цифрами на основной клавиатуре, функциональные клавиши и сами клавиши модификаторов.
  • Если в "lock state" стоит "C", значит выбор значения зависит от состояния модификатора clock. Обычно, это клавиши с буквами.
  • Буква "N" помечает клавиши, зависимые от состояния nlock. Традиционно - это клавиши на дополнительной цифровой клавиатуре.
  • Наконец, в последней колонке может стоять буква "B" (от слова both - оба). Это должно означать, что клавиша реагирует и на clock и на nlock. Однако, ни в одной "раскладке клавиатуры" из дистрибутива FreeBSD такие клавиши не предусмотрены.
  • Действие же этих модификаторов заключается в том, что при нажатии соответствующего lock, значение модификатора shift инвертируется. То есть, если shift не нажат (но действует соответствующий lock), то выбирается такое значение для клавиши, которое соответствует "активному состоянию" модификатора shift. И наоборот - при нажатом shift выбирается значение соответствующее "не нажатому" shift'у.

    То есть, в таблице раскладки меняются местами колонки "с shift'ом" и "без shift'а". Обратите внимание, что в соответствии с формулой, определяющей номер колонки, меняются местами не только первые две, но и все четные с нечетными (то есть, "просто ctrl" и "ctrl+shift", "просто alt" и "alt+shift" и т.д.).

    Обе клавиши - clock и nlock, являются "фиксирующимися". То есть, после нажатия и отпускания clock (например) клавиатура переходит в состояние clock. А при повторном нажатии/отпускании возвращается в исходное состояние (что тоже всем известно).

    По умолчанию, значение nlock "навешено" на клавишу [Num Lock]. А вот с clock все немного сложнее. Вообще-то, оно изначально соответствует клавише [Caps Lock], но если у вас загружена раскладка для русской клавиатуры (что бывает чаще всего), то на эту клавишу "навешивается" еще и другой модификатор - alock (Alt Group Lock), который служит для переключения на русский алфавит (о нем поговорим немного позднее). Для того, чтобы получить именно clock вам придется нажимать клавишу [Caps Lock] вместе с одним из основных модификаторов (не важно - shift, ctrl или alt).



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