web-dev-qa-db-ja.com

2つのキーボード、2つの言語レイアウト

2つのキーボードセットをコンピューターに接続したい。特定の言語にそれぞれを設定することは可能ですか?そのため、毎回言語を変更する必要はありません。

例えば:

  • キーボード1種類ロシア語

  • キーボード2種類英語

16
user126106

xinputおよびsetxkbmapユーティリティを使用して、 terminal から設定して、各キーボードが異なるレイアウトを持つようにすることができます。

まず、xinput -list | grep keyコマンドを使用して、各キーボードのデバイスIDを見つける必要があります。次に例を示します(私の場合)。

$ 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
15
Radu Rădeanu

少しトピックから外れていますが、-variantオプションを追加で使用すると、1つのキーボードでdvorakを入力し、他のキーボードでworkmanまたはqwertyまたはその他のレイアウトを入力できます。

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

ステロイドのペアプログラミング!

6
Ronald Evers