⛳
Ubuntu + Chrome で「Shift が勝手に入力される / 日本語入力できない」問題の記録
忙しい人用
- 原因は fcitx が systemd user environment に永続保存されていたこと
- 設定ファイルを消しても直らなかったのは ログアウトでは user environment が消えないため
-
systemctl --user unset-environmentとloginctl terminate-userで 完全に除去 - その後 ibus + Mozc を明示的に有効化して解決
発生していた症状
- Ubuntu(X11 セッション)
- Chrome 上で Shift が押しっぱなしのような挙動
- 日本語入力ができない
(nihongo nyuuryoku dekinaiのようにローマ字がそのまま出る) - Ubuntu + Chromeのバグで解決のためにはfcitxを無効化する必要がある
- fcitx を削除・無効化しても、再ログインすると fcitx が復活
環境
- Ubuntu 22.04 / 24.04 系
- GNOME
- Google Chrome
- ibus / fcitx5 / Mozc を過去に切り替えた履歴あり
systemd user environment が原因だった
状況確認
systemctl --user show-environment | grep -i fcitx
GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
問題点
- 上記は設定ファイル由来ではない
- systemd user セッションに保持された環境変数
- 通常のログアウトでは消えない
解決手順
1. environment から fcitx を削除
systemctl --user unset-environment GTK_IM_MODULE QT_IM_MODULE XMODIFIERS
2. user セッションを完全終了
- これは結構大事だった
- 通常のログアウトではIME設定がクリアされない部分があるよう
loginctl terminate-user $USER
※ この時点で強制ログアウトされる(正常)
3. 再ログイン後の確認
systemctl --user show-environment | grep -i fcitx
何も表示されなければ成功。
日本語入力(Mozc)有効化
エンジン確認
ibus list-engine | grep mozc
Mozc を有効化
ibus engine mozc-jp
もしくは GUI
ibus-setup
- Input Method → Add → Japanese → Mozc
結果
- ✅ 日本語入力が復活
- ✅ Shift 勝手入力が解消
- ✅ 再起動しても再発なし
学び
- IM 周りの問題ではsystemctl --user show-environment を必ず確認する
- 通常のログアウトで直らない場合、systemd user environment を疑う
Discussion