web-dev-qa-db-ja.com

Ubuntu Mateはxkbを無効にしてiBusを使用します

私のコンピューターでは、以下のキーボード言語サポートが必要です。

  • 英語(米国)
  • ギリシャ人
  • 日本人

したがって、Anthy(私は16.04LTSから使用されています)は私にとってはオプションです。最近、MATEバリアントを使用してUbuntu 16.04LTSから18.04.2 LTSにアップグレードしました。

したがって、iBusanthyをインストールしました:

Sudo apt-get install ibus ibus-anthy

言語設定にiBus入力オプションを設定しました: Selecting IBus as Input method

また、このようにシステム設定を無視するようにiBusを構成しました answer

システムの入力言語の2つのインジケーターが原因ではなく、xkb/xinput /何でも駆動するものを「無効」にして、ALT + Shiftキーボードストローク。

さらに、私のデスクトップには、iBus用とxmodmap用の2つのインジケーターがあります。 language indicators

Alt + Shiftで2つの言語入力を切り替えると、iBus以外の1つが入力言語を示します。

Xmodmapレイアウトは次のように構成されています。

$ setxkbmap -query

rules:      evdev
model:      pc105
layout:     gr,us
variant:    ,
options:    grp:alt_shift_toggle,grp_led:scroll,grp:alt_shift_toggle,grp_led:scroll

私は一時的にxmodmap言語入力を無効にすることを試みました:

setxkbmap -layout us

しかし、言語の入力を変更できるだけでなく、英語にもこだわることもできるようです。この状況でも、iBUSインジケーターからギリシャ語に言語入力を変更すると、言語入力を使用および変更できます。

また、この場合、一時的に「無効」にしたxkbmapで次の設定を取得します。

rules:      evdev
model:      pc105
layout:     us
options:    grp:alt_shift_toggle,grp_led:scroll,grp:alt_shift_toggle,grp_led:scroll

したがって、私が理解している限り、xmodmapはiBusをオーバーライドするので、それをやめて、iBusがすべての言語入力を処理できるようにします。そのためには、setxkbmapのオプションを完全に無効にする必要があります。これを行うにはどうすればよいですか。

2

クリーンな設定から始めましょう。

  1. リセットMATEキーボード設定

    dconf reset -f /org/mate/desktop/peripherals/keyboard/
    
  2. グローバルシステムキーボード設定をリセットし、/etc/default/keyboardに次の内容を入力します。

    # KEYBOARD CONFIGURATION FILE
    
    # Consult the keyboard(5) manual page.
    
    XKBMODEL="pc105"
    XKBLAYOUT="us"
    XKBVARIANT=""
    XKBOPTIONS=""
    
    BACKSPACE="guess"
    

    この設定をSudo update-initramfs -u -k allを使用してinitramfsイメージに適用します。

  3. Language Support(またはgnome-language-selector)を起動し、EnglishGreekおよびJapaneseがインストールされていることを確認します。言語; キーボード入力システムIBusに設定されていることも確認してください。

  4. 起動IBus設定(またはibus-setup)とここに言語を追加し、それらのレイアウト切り替えショートカットを設定し、ログアウトして再度ログイン(または再起動)します。

    注:設定しました Alt+Shift ここでは、しかしそれは言語を切り替えません。などの代替ショートカット Super+Space 言語を切り替えます。

1
N0rbert