私環境での対処
要約
fcitxを消してfcitx5を入れた
Ghosttyという良さげなターミナルを使いたくなった。
開発者はTerraformでお馴染みMitchell Hashimoto san。
こういうナウでヤングなターミナルって日本語入力に難がありがちだけどMitchell Hashimotoさんはそういう方面に理解があるらしく、最近のバージョンでIME周りが改善されたらしいと知った。
お仕事Macで使ってみて快適だったので、私用のArch Linuxにも入れてみることにした。
sudo pacman -S ghostty
で手元のArch Linuxにインストールしたところ、見事に日本語が打てなかった。
前提
Ghosttyは1.1でIME周りの入力改善が入っている。
大前提としてGhostty1.1以降であることを確認する。
❯ ghostty --vesrion
info: ghostty version=1.1.3-arch1
問題ない
https://github.com/ghostty-org/ghostty/issues/4332 の修正が入る最新版で解決できると思ったが、私の環境では最新版を入れてもだめだったため、以下に続く……
手順メモ
これはあくまで私が解決できた手法である。
(これで解決しないかもしれないし、別のもっと良い方法があるかもしれません。)
fcitxを削除
sudo pacman -Rs fcitx-im fcitx-mozc fcitx-configtool
fcitx5をインストール
sudo pacman -S fcitx5-gtk fcitx5-im fcitx5-mozc fcitx5-configtool
fcitx5-gtkなしでもブラウザなどは日本語入力できるが、Ghosttyではfcitx5-gtkが無いとだめだった。
xprofileの変更
最後に~/.xprofileの各種値がfcitxのままなのでfcitx5にしておく。
export GTK_IM_MODULE=fcitx5
export QT_IM_MODULE=fcitx5
export XMODIFIERS=@im=fcitx5
これでreboot。
動作
Ghosttyで日本語が打てた。
候補出てくる位置がめちゃくちゃ気になるが……(スクショでは取れず)
もちろんブラウザでも日本語入力できる。この記事を書けてるのが証拠。
fcitx5での変換 無変換でIME切り替え方法
IMEの切り替えのデフォルトはctrl + spaceになっている。
これを「無変換」は英語入力、「変換」は日本語入力にしたい。
- 入力メソッドを有効にする:無変換 (なぜか日本語環境なのにハングル Hanjaで出てくるが問題なし……)
- 入力メソッドをオフにする:変換(なぜかこれもハングルで反映されるが問題なし)
これで保存すると変換無変換で切り替えられるようになった。
Ghostty 合字廃止
Ghosttyで「ます」が「〼」と勝手に変換して表示される問題が発生。
ghosttyのconfigファイルで
font-feature = -dlig
を入れることで通常の表示になった。