Deux claviers, deux dispositions linguistiques

16

Je souhaite connecter deux ensembles de claviers à mon ordinateur. Est-il possible de définir chacun pour une langue spécifique. Pour qu'il n'y ait pas besoin de changer de langue à chaque fois.

Par exemple:

  • clavier 1 types russe

  • clavier 2 types anglais

nano - me fusionner
la source

Réponses:

15

À l'aide de xinputet des setxkbmaputilitaires, vous pouvez définir à partir du terminal afin que chaque clavier ait une disposition différente.

Tout d'abord, à l'aide de la xinput -list | grep keycommande, vous devez trouver l'ID de périphérique de chaque clavier. Voici un exemple (mon cas):

$ 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)]

Et deuxièmement, à l'aide de setxkbmap -device <key_ID> -layout <layout_name>, définissez la disposition que vous souhaitez pour chaque clavier. Un exemple (pour mes claviers):

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
Radu Rădeanu
la source
Génial. Travaux. Merci. Peut-être une question distincte. Mais existe-t-il un moyen de les surveiller dans Plasma Desktop avec une icône montrant la disposition de chaque clavier?!
nano - me fusionner
@MinimusHeximus C'est une question distincte, et je pense qu'une réponse simple dans un commentaire à votre question est difficile à faire. Veuillez donc utiliser le bouton Poser une question .
Radu Rădeanu
Merci. Je peux demander, mais pour être informatif: maintenant l'icône de langue normale est complètement irrésistible dans Plasma. btw, une solution dans l'unité est la bienvenue (que je n'ai pas encore testée).
nano - me fusionner
1
@MinimusHeximus Eh bien, cette solution devrait fonctionner dans n'importe quel bureau Ubuntu . Et j'ai testé sur Unity.
Radu Rădeanu
3
Merci pour cette réponse, qui m'a inspiré pour poser une question connexe: Comment attribuer de façon permanente une disposition de clavier différente à un clavier USB? Il semble que j'aurai besoin d'un script de démarrage pour cela. Première liste xinput | grep "Clavier USB" me donnera des ID d'appareil (différents à chaque démarrage). J'ai besoin d'une autre commande pour couper le premier numéro d'identification, puis l'utiliser ici: setxkbmap -device <NUMBER> -layout <LAYOUT>
Sadi
6

Légèrement hors sujet, mais si vous utilisez également l' -variantoption, vous pouvez taper dvorak sur un clavier et un ouvrier ou qwerty ou toute autre disposition sur l'autre clavier.

setxkbmap -verbose -device 17 -layout us -variant dvorak

Jumeler la programmation sur les stéroïdes!

Ronald Evers
la source