1台のコンピューターに2つのキーボード。AIで書くときはUSキーボードレイアウトが必要で、BIを使うときはスウェーデン語が必要です。可能?


47

外付けキーボードを使用するラップトップがあります。外部キーボードを使用して入力するときは、USキーボードレイアウトを使用します。これは私が持っている外部キーボードの種類だからです。一方、統合キーボードを使用して入力する場合は、スウェーデン語のレイアウトを使用します。

これは可能ですか?そして、それをどうやってやるのでしょうか?

ここでLinuxの専門知識のほとんどが見つかると思うので、ここで質問しています。

回答:


41

まず、変更するキーボードのデバイスIDを見つける必要があります。

$ xinput -list | grep -i 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)]
    ↳ Power Button                              id=7    [slave  keyboard (3)]
    ↳ LITEON Technology USB Keyboard            id=9    [slave  keyboard (3)]
    ↳ LITEON Technology USB Keyboard            id=10   [slave  keyboard (3)]

次に、setxkbmapを使用してレイアウトを変更します。

$ setxkbmap -device 9 dvorak

setxkbmapの一部のバージョンには、「-layout」引数が必要です。

$ setxkbmap -device 9 -layout dvorak

こんにちは、私はこれを行いましたが、矢印キーと他の方向キー(これはまったく機能しません)以外のすべてでうまく機能します。キーボードは、ファンキーなキーマッピングを備えた人間工学に基づいたキーボードの1つである可能性があります...それらを再び機能させる方法はありますか?
btelles

8
では、setxkbmapを手動で呼び出す代わりに、ブート時にこの構成を設定する最良の方法は何ですか?
リチャードターナー

9

あなたがやりたいことは確かに可能であると私は積極的に言うことができます。最初に指定されたシナリオを達成しました

sudo cat /dev/input/event(0,1,2..)

各キーボードで入力しながら、別々のデバイスとして認識されるようにします。次に、試行錯誤を繰り返して、

setxkbmap -device (1-x) us

セカンダリsetxkbmap -device 1 us(両方)にsetxkbmap -device 6 usのみ影響を与えながら、両方(すべて)のキーボードを構成することを発見しました。関連性があるのは、おそらく両方がPS / 2を介して接続されていることです。

もちろんこれはあなたのために働くことを保証されず、適切な答えとして分類さえしませんが、それはそれがすべて可能であることを確認します。個々のキーボードの名前がどのスキームに従っているかはわかりませんが/dev/input、udevで名前を指定できると確信しており、適切なsetxkbmapコマンドを入力できるようになっています/etc/rc.local


9

この質問は少し古いものですが、他の答えはどれもこの作業を起動する方法を扱っていないので、私は自分の解決策を共有すると思っていました。

私の状況: キーを動かしているUSB経由で差し込むHappy Hacking Keyboardがあります(Caps Lockの制御など)。ほとんどの場合これを使用しますが、標準のラップトップキーボードまたは別のUSBキーボードを使用したい場合があります。これらのキーボード用に、カスタムキーボードレイアウトを作成しました。

秘Theは、カスタムキーボードレイアウトをハッピーハッキングキーボードに適用しないことです。

解決策: Xorg設定ファイルを次のように作成しました:

$ cat /etc/X11/xorg.conf.d/30-keyboard.conf 
Section "InputClass"
        Identifier "Happily Hacked Keyboard"
        MatchDevicePath "/dev/input/event*"
        MatchIsKeyboard "on"
        Driver "evdev"

        Option "XkbLayout" "us"
        Option "XkbVariant" "hhk"
EndSection

Section "InputClass"
        Identifier "Happy Hacking Keyboard"
        MatchIsKeyboard "on"
        MatchVendor "Topre_Corporation"
        Driver "evdev"

        Option "XkbLayout" "us"
        Option "XkbVariant" "basic"
EndSection

最初の部分は基本的に、標準キーボードについて、カスタムバリアントを使用してusレイアウトを適用します。2番目の部分では、ハッピーハッキングキーボードについて、基本的なバリアントでusレイアウトを使用します。

パラメーターの束に基づいてデバイスを一致させることができます:xorg doc


あなたの後半の答えかもしれないメリット後半のコメントは...あなたは、両方の「ハッピーハッキングKbdを」などの識別子を持っている...私はそれはおそらく間違いだと思う、最初InputClass識別子は、おそらく「ジェネリックキーボード」でなければなりません
ダニエル

1
@Daniel識別子は実際には異なります。「ハッキングされたキーボード」と「ハッキングされたキーボード」ですが、ほんのわずかです:)
zanegray

正しいおかげで!...私の悪い老眼鏡のせいだ:)> v
ダニエル

...しかし、これは(キーボードが大幅に機能するため、サイクルするさまざまな複数のレイアウトも可能です!1つ目のru、ua、2番目のキーボードのde、cz、uaのように)私の中のマウスボタンを何らかの方法で殺しました外付けUSBマウスの。干渉が何であるかを探す必要があります...
Golar Ramblar

この解決策がうまくいったらいいのですが、うまくいきません-ベンダーIDを正しく取得できないからでしょうか?コマンド「lsusb -v | grep -e idVendor」により、「0x09da A4Tech Co.、Ltd.」そのため、さまざまなオプションも試しました(16進コードなし、スペースの代わりに下線など)。次に、「xinput list」と「udevadm info」(A4TECH)で取得したベンダーIDを試しました。グローバルキーボード設定を含むファイル「/usr/share/X11/xorg.conf.d/40-libinput.conf」があるため、30から50に変更しました。しかし、私は何も得ることができませんでした。何かアイデアはありますか?(Ubuntu 18.04)
サディ

5

setxkbmapの-device引数で判断すると、可能かもしれません。

       -デバイスデバイス
               入力デバイスの数値デバイスIDを指定します
               新しいキーボードレイアウトで更新されました。指定されていない場合、
               Xサーバーのコアキーボードデバイスが更新されます。

当然ながら、現時点では、試すための2番目のキーボードはありません。

-Dvorakユーザー


ふむ -device 0は両方を切り替えます。-device 2(Arkenkloの答えによるとオンボードキーボードである必要があります)は、少なくとも私のラップトップとUSBキーボードでは何も切り替えません。
トミーマクガイア

1

私はあなたが望むようにこれを正確に行うことができるとは思わない。私が知っている2つのオプションがあります。

1)単純なマウスクリック/キーストロークを切り替えることができます。

Ubuntu / GNOMEの場合:

マウスクリック

Ubuntu / Gnomeで、入力レイアウトをセットアップしたら、パネルの空の場所に移動し、右クリックして[パネルに追加]をクリックします。これをパネルに追加するには、「キーボードインジケータ」を選択します。キーボードレイアウトを示す小さなテキストが入力され、これをクリックして切り替えることができます。

キーボードショートカット

システム->設定->キーボード->レイアウト->レイアウトオプション

「レイアウトを変更するキー」というオプションがあります。Alt + Shiftに設定できます。これにより、通常のキーボードショートカットが妨げられることはありません。

KDEでそれを行う方法もあると思います。

2)他の代替手段はhttp://en.wikipedia.org/wiki/Xneurですが、これがスウェーデン語で利用可能かどうかはわかりません。英語と同様の構成を持つ言語では不可能かもしれません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.