LINUX.ORG.RU

setxkbmap -option ctrl:nocaps не работает

 ,


0

1

Собственно, сабж.

Не работает оно вкупе с ctrl:swapcaps (пытаюсь переназначить контрол на CapsLock), т.е. просто nocaps работает

Вот мой /etc/X11/xorg.conf.d/10-keyboard.conf:

Section "InputClass"
    Identifier             "Keyboard Defaults"
    MatchIsKeyboard	   "yes"
    Option	           "XkbLayout" "us,ru"
    Option                 "XkbOptions" "grp:alt_shift_toggle,grp_led:caps,ctrl:swapcaps,ctrl:nocaps"
EndSection

Но тупо

setxkbmap -option 'ctrl:nocaps'

Тоже не работает

Среда — xfce, выставлено следовать системным параметрам

★★★★★

Последнее исправление: derlafff (всего исправлений: 2)

Ответ на: комментарий от derlafff

Есть два варианта: глобальный и не очень.

Не очень — man xmodmap.

Глобальный — сделать keymap для своей клавиатуры и написать правило udev. У меня так:

:: cat /etc/udev/keymaps/custom-kbd-map-usb
# remap some keys on usb keyboards

# left Alt → left Control, right Alt → right Control
0x700E2 leftctrl
0x700E6 rightctrl

# left Win → left Alt, right Win → right Alt
0x700E3 leftalt
0x700E7 rightalt

# left Control → left Meta, right Control → right Meta (with altwin:meta_win)
0x700E0 leftmeta
0x700E4 rightmeta
#0x700E0 unknown
#0x700E4 unknown

# Caps Lock → Escape
0x70039 esc

# Escape → Caps Lock
0x70029 capslock
:: cat /etc/udev/rules.d/96-keymap.rules
# for Generic USB Keyboard
SUBSYSTEM=="input", ACTION=="add", KERNEL=="event*", SUBSYSTEMS=="usb", ENV{ID_INPUT_KEYBOARD}=="1", RUN+="keymap $name custom-kbd-map-usb"
# for Generic PS/2 Keyboard
SUBSYSTEM=="input", ACTION=="add", KERNEL=="event*", ENV{ID_PATH}=="platform-i8042-serio-0", ENV{ID_INPUT_KEYBOARD}=="1", RUN+="keymap $name custom-kbd-map"
Остальное можно додумать самостоятельно. Плюс этого варианта в том, что работает не только в иксах. Минус — не работает вне Linux.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.