6

Фон:

В конечном итоге, я пытаюсь настроить пользовательскую раскладку клавиатуры одной рукой, похожую на эту демонстрацию(нажмите one-handed typing demo).

XKB используется во многих дистрибутивах Linux. В Википедии есть достойное описание xkb .

В интерфейсах человек-компьютер расширение X-клавиатуры или XKB является частью системы X Window, которая расширяет возможности управления клавиатурой по сравнению с тем, что предлагается в базовом протоколе X Window System. Основными особенностями этого расширения являются:

К сожалению, для достижения этой функциональности я должен сделать пробел модификатором.

Вопрос:

Как бы вы настроили клавишу пробела в качестве модификатора в программе XKB?

http://www.charvolant.org/~doug/xkb/html/node3.html

Похоже, что пространство не может быть модификатором по умолчанию.

3 ответа3

4

Я обнаружил, что Space2Ctrl - лучший инструмент для этого переназначения. Очень просто, не требует никакой настройки и работает как задумано, без лишних задержек. Я пробовал keydouble, но оно показало заметную задержку, прежде чем на экране показывалось пространство

3

Я думаю, у вас возникнут огромные трудности с получением «крана в космос»; удерживайте, чтобы изменить поведение.

Тем не менее, вы можете использовать xkbcomp :0.0 для выгрузки текущей раскладки ключей с сервера в файл server-0_0.xkb , и я думаю, что я вижу простой способ заставить пробел функционировать как модификатор:

key <LALT> {         [           Alt_L,          Meta_L ] };
key <SPCE> {         [           space ] };
....
modifier_map Mod1 { <LALT> };
modifier_map Lock { <CAPS> };

Попробуйте заменить space на Mod5 (или какой ключ модификатора имеет больше смысла), а затем добавьте новую строку modifier_map :

key <LALT> {         [           Alt_L,          Meta_L ] };
key <SPCE> {         [           Meta5 ] };
....
modifier_map Mod1 { <LALT> };
modifier_map Lock { <CAPS> };
modifier_map Meta5 { <SPCE> };

Это не проверено, но кажется правильным.

Я не знаю, как вы получите простое старое место, хотя. Я бы предложил полностью сопоставить его с другим ключом.

1

Подумайте об использовании keydouble. Это утилита пользовательского пространства, которая присоединяется к X и продолжает захватывать и обрабатывать события клавиатуры. Конфигурация по умолчанию, представленная в examples/keydoublerc делает именно то, что вы хотите - space становится ctrl. Если он не используется с другим ключом, то место освобождается при отпускании ключа.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .