Как установить Level3_Shift на Caps Lock И Составить к заглавным буквам Lock+Ctrl в XFCE?

Я недавно переключился из SUSE, который использует KDE в качестве настольной среды по умолчанию. В KDE это возможно к archieve такая установка с опциями GUI, но не в XFCE.

Я попробовал, настраивает ~/.Xmodmap зарегистрируйте следующий путь:

clear Lock
clear Control
clear Mod2 
clear Mod5 
keycode  77 = Caps_Lock Num_Lock Caps_Lock Num_Lock
keycode  66 = ISO_Level3_Shift ISO_Level3_Shift ISO_Level3_Shift ISO_Level3_Shift
keycode  37 = Control_L NoSymbol Control_L NoSymbol Multi_key Multi_key 
add Control = Control_L Control_R
add Lock = Caps_Lock
add Mod2 = Num_Lock
add Mod5 = ISO_Level3_Shift

Что происходит:

  • Функциональность Caps Lock переходит к Num Lock
  • Функциональность Num Lock переходит к Сдвигу + Num Lock

Что я ожидал происходить, но это не сделало:

  • Кнопка Caps Lock должна быть ISO_Level3_Shift (это, согласно xev, но это имеет функциональность обычного Сдвига somewhy),
  • При нажатии Caps Lock + должен действовать Левый Ctrl, как Сочиняют, ключ (не работает).

Что я делаю неправильно? Xubuntu 18.04, новая установка

1
задан 2 June 2018 в 22:51

1 ответ

Сопоставьте сдвиг третьего уровня с <CAPS> (caps lock) и используйте третий уровень левого регулятора в качестве клавиши композиции (Multi_key):

setxkbmap -option compose:lctrl-altgr \
    -option lv3:caps_switch \
    -layout "us(intl)"

Для клавиши numlock вы можете сделать файл символов в качестве оболочки для любого макета, который вы используете (я собираюсь использовать us(intl)). Создайте файл символов с именем custom:

xkb_symbols "basic" {

    // The layout that you want to use.
    include "us(intl)"

    key <NMLK> { [
        Caps_Lock, Num_Lock, Caps_Lock, Num_Lock
    ] };

};

Сохраните файл custom в дереве каталогов, которое отражает структуру /usr/share/X11/xkb. Поэтому, если ваш каталог хранится в /home/<user>/my-xkb/, файл custom должен быть в /home/<user>/my-xkb/symbols/custom.

(См. здесь для получения общих инструкций о том, как создавать и использовать пользовательские файлы Xkb.)

Вместо того, чтобы просто использовать setxkbmap, вам придется использовать -print ] опция для передачи вывода на xkbcomp. У xkbcomp есть опция -I, которую вы будете использовать, чтобы указать путь к вашему пользовательскому дереву каталогов Xkb.

setxkbmap -option compose:lctrl-altgr \
    -option lv3:caps_switch \
    -layout "custom" \
    -print |
        xkbcomp -I"/home/<user>/my-xkb" \
            - "$DISPLAY"
0
ответ дан 8 December 2019 в 00:47

Другие вопросы по тегам:

Похожие вопросы: