LoginSignup
1
1

More than 1 year has passed since last update.

WSLgとFcitx5はWaylandをdisableにして使う

Posted at

問題

WSLg使いたい、ext4マウントしたい。とりあえずWindows11にアップグレードした。日本語(個人的には中国語も)入力したい。

…日本語入力できないんだが。ということで半日くらい調査してみたところ、

上記の記事を見つけて、なぜか変換候補パネルが出ないものの、一応変換はできるところまで来たので共有しておきます。

なお、いったん動いた?時点でメモ代わりに記載しておりますので、いろいろ勘違いしているところがあるかもしれません。

余談: Ubuntu 20.04 で Fcitx5 は apt パッケージが足りていません
  • fcitx5-configtoolが起動しない…。ので、ここから先は無理やり Ubuntu 21.10にアップグレードしたWSL2を触っていきます。
  • リリースアップグレードの方法は下記を参照しました。

ここから先の理屈は、Ubuntu以外のディストロでも通用するのでは?もっと良い方法があったら教えてください。

Ubuntu 21.10 になったら

# 使えるIMの確認
$ im-config -l
 ibus xim
# あとで使う fcitx5-configtool も一緒にインストールされる
$ sudo apt install -y fcitx5-mozc fcitx5-rime daemonize
# ユーザー用 IM をfcitx5にセットする。
$ im-config -n fcitx5
$ im-config -l
 ibus fcitx5 xim
とても大事

ここでいったん wsl --shutdown して再度 wsl を起動してください。
再起動後はfcitx5-configtoolでいろいろ設定してみてください。

.bash_profile に追加
# ワークアラウンド:いれなくてもいい?
daemonize -e /tmp/dbus-${USER}.log -o /tmp/dbus-${USER}.log -p /tmp/dbus-${USER}.pid -l /tmp/dbus-${USER}.pid -a
/usr/bin/dbus-daemon --address="unix:path=$XDG_RUNTIME_DIR/bus" --session --nofork  >>/dev/null 2>&1
export DBUS_SESSION_BUS_ADDRESS="unix:path=$XDG_RUNTIME_DIR/bus"

# fcitx5 をwaylandプラグインをカットして起動
daemonize -e /tmp/fcitx5.log -o /tmp/fcitx5.log -p /tmp/fcitx5.pid -l /tmp/fcitx5.pid -a /usr/bin/fcitx5 --disable=wayland
export INPUT_METHOD=fcitx
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx

みそはここで Fcitx5 の Wayland プラグインをカットしてあげるところです。

この後、geditやxfce4-terminalなどでMozcとRimeで変換ができたことを確認します。

最後に

この方法では、変換候補パネルが出ないほかにもいろいろ不具合があります(Addonの設定を開くと勝手に閉じるとか)。
個人的な考えから、IBusに戻してまでWSLgを使う気はないのと、調べてどうのまでする体力的余裕が無いので、機会があって判明したことがあれば追記、でなければ半年ほど放置してみたいと思います。

参考文献

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1