Я хочу подключить два набора клавиатуры к моему компьютеру. Можно ли установить каждый для конкретного языка. Так что нет необходимости каждый раз менять язык.
Например:
клавиатура 1 тип русская
клавиатура 2 типа английский
Используя xinput
и setxkbmap
утилиты, вы можете установить с терминала, чтобы каждая клавиатура имела разную раскладку.
Во-первых, используя xinput -list | grep key
команду, вы должны найти идентификатор устройства каждой клавиатуры. Вот пример (мой случай):
$ xinput -list | grep key
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ Sleep Button id=9 [slave keyboard (3)]
↳ 2.4GHz 2way RF Receiver id=10 [slave keyboard (3)]
↳ HP Webcam id=12 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=13 [slave keyboard (3)]
↳ HP WMI hotkeys id=15 [slave keyboard (3)]
↳ USB Keyboard id=16 [slave keyboard (3)]
↳ USB Keyboard id=17 [slave keyboard (3)]
А во-вторых, используя setxkbmap -device <key_ID> -layout <layout_name>
, установите раскладку, которую вы хотите для каждой клавиатуры. Пример (для моих клавиатур):
setxkbmap -device 3 -layout ro #My master keyboard is set to Romanian layout
setxkbmap -device 10 -layout us #The keyboard with id=10 is set to English (US) layout
setxkbmap -device 16 -layout ru #The keyboard with id=16 is set to EFor Russian layout
Немного не по теме, но если вы дополнительно используете эту
-variant
опцию, вы можете набрать dvorak на одной клавиатуре и workman или qwerty или любую другую раскладку на другой клавиатуре.Парное программирование на стероидах!
источник