雑メモです。
Ubuntu16.04からUbuntu17.10にアップグレードしたら日本語が打てなくなっちゃいました (まぁよくある話です)。
平たくいうと fcitx
とIMの環境変数周りの設定がうまくいってなかったということで、色々場当たり的に直してたら動いて良かったという話です。
あんまりアテにならない情報です 間違ってたら教えてください。
まず「入力メソッド」 im-config
で fcitx
を設定するも状況改善せず。
im-config
GUIから設定して再起動するも変わりませんでした
(単に im-config
が設定している先のファイルを読んでないとか、 im-config
が古いとかもありえます)。
とりあえず fcitx-diagnose
で状態を確認。
fcitx-diagnose
以下の環境変数周りでエラーがでているようでした。
GTK_IM_MODULE
QT_IM_MODULE
XMODIFIERS
(間、 ibus
をアンインストールしたりも試していました)
XMODIFIERSやQT_IM_MODULE環境変数の設定先
Ubuntu 17.10では /etc/environment
に環境変数を設定しました。
export GTK_IM_MODULE=fcitx export QT_IM_MODULE=fcitx export XMODIFIERS="@im=fcitx"
Ubuntu17.10からWaylandで動いているそうで、 ~/.xprofile
を読めないそう。
なので /etc/environment
で設定しました(これって何かマズイとかありますかね。。?)。
とりあえず .xprofile
とか .xinitrc
とか .xinputrc
とかに設定してみていましたがダメでした。
ArchWikiを参考に設定しました。
非デスクトップ環境
以下の行をデスクトップのスタートアップスクリプトファイル (GDM, LightDM, SDDM を使っている場合は .xprofile もしくは > .profile、startx や Slim を使っている場合は .xinitrc、Wayland を使っている場合は /etc/environment) に追加してくださ> い。この設定で、fcitx は gtk/qt のインプットメソッドモジュールを使うようになり xim プログラムをサポートします (必要なインプットメソッドモジュールがすでにインストールされているか確認してください)
まじっすかーということで、 /etc/environment
に設定しました。
GNOME/Wayland 上での Fcitx の利用
Wayland は ~/.xprofile に保管された環境変数を読み込むことができないため、Wayland 上では Fcitx は正常に動作しません。Fcitx を利用するにはディスプレイマネージャから Xorg セッションを起動してください。
https://wiki.archlinux.jp/index.php/Fcitx
かなり場当たり的にですが、とりあえず解決して今も日本語を打てているという状態です。
僕のツイート
あとで見返して笑えそうなので残しておきます。
Upgraded my Ubuntu to newest 17.10 😁 pic.twitter.com/IGjIxwsVdg
— Hiroki KIYOHARA (@hirokiky) 2017年10月21日
Thanks a lot / “im-config - im-config 使用筆記” https://t.co/FQC2DyngkR
— Hiroki KIYOHARA (@hirokiky) 2017年10月21日
Super helpful / “Fcitx - ArchWiki” https://t.co/q4bkd1gTrQ
— Hiroki KIYOHARA (@hirokiky) 2017年10月21日
YYEEEAAHH Finally I set up fcitx and Japanese IME on Ubuntu 17.04 やったぜーーー The reason was I didn't set XMODIFIERS or so on /etc/enviroment
— Hiroki KIYOHARA (@hirokiky) 2017年10月21日
まとめ
ArchWiki日本語情報ほんとうにありがとうございます! IMまわりとかは、英語での情報があんまり見つけられなかったので助かりました。