いまさら termuxに初挑戦したという、ただそれだけのお話し。
あまりにもあっけなく日本語環境が整ってしまったのに、X11の日本語環境構築は特に工夫も苦労もいらないケースもあるよ…という話題を termux方面では見た記憶がないので初投稿。

termux:X11もインストールを終え、lxterminalを開いて「cd 」とタイプしたら、なんかいきなり阻止!? 何これ? 日本語?
Android環境の Gboardが活きており、「cd 」を「そし<変換>」と解釈してくれた模様。え? Gboardがそのまま使えるの? やったね。(^_-)v
-
スクリーンショットは、proot-distroしていないネイティブのtermux環境の lxterminal
-
英語のGboardの仮想鍵盤を表示させればグライド入力もOK。
-
グライド入力時/日本語入力時以外は、スペルチェック機能が邪魔なので、その辺りの機能がないFEPの利用もお奨め。
- FEPの切り替えは、Android OSや Gboardによって用意されていますが、私は、Automate で特定のキー押下をトラップして自分用にカスタマイズしています。(Alt + 半/全角で日本語Gboard、Shift + 半/全角は英語Gboard、Ctrl + 半/全角で何もしないFEP)
-
emacs編集画面での日本語入力/グライド入力も OK
-
proot-distro loginした debian環境も OK
-
firefox (termuxネイティブ)への入力では何故かかな文字がダブることががあり、入力結果が吃音状態。(ももちろん、BSや DELキーでし修正できますが)。逆に長い文字列の途中が欠落することも稀にあるみたい。(X11環境だけでなく、Androidネイティブ環境でも起きるので、Gboardとfirefoxの相性問題?)。
-
物理キーボードは必須。マウスやトラックボールのようなポインティングデバイスも必須。(なくてもなんとかなるが、実用的ではなさそう)。
インストールしたパッケージ
例えば、mozcや、あるいは、i-busや uimといった FEP/IME関連のパッケージはインストールしていません。というか、そもそもtermuxには見当たりませんものね。
インストールしたパッケージは以下のとおり、特殊なものはありませぬ。
- ttf-dejavu.deb (フォント)
- lxterminalと emacs-xをインストールしたら 依存関係で一緒についてきました。
- xorg-setxkbmap.deb
- 日本語109A鍵盤を使いたいので入れました。termux-x11から dbus-launch経由で、
setxkbmap jpを呼び出すことで、日本語109A配列を利用しています。 - Termux:X11 (XサーバーappのAPK)
-
https://github.com/termux/termux-x11
Preferences (設定)の Keyboard画面の “Hardware keyboard scancodes workaround"の項目にチェックを入れておかないと、日本語が通らないことがあるようです。(2026.-5.08加筆)
インストールには、 Running Graphical Applications の記載を参考にしました。
proot-distro環境
普段づかいは軽快な termuxですが、やはりDebianやUbuntu環境を使いたくなったときに proot-distroに助けられます。親termux環境の X11環境を使うには、環境変数DISPLAYの転送と termuxの $TMPDIRを /tmpと共用する指定が必要でした。
$ proot-distro login ${DISPLAY:+--env DISPLAY=$DISPLAY} --shared-tmp --no-arch-warning debian
termux環境のフォントを、proot-distroしたdebian環境から使う
termux環境にインストールした ttf-dejavuフォントは、proot-distro loginしたdebian環境からは見えていないようでしたので、debian環境から見えるよう、$PREFIX/share/fontsを debian側の /usr/local/share/fontsにシンボリックリンク。もともと Android環境が内蔵している /system/fontsもついでにリンク。
# cd /usr/local/share/fonts
# ln -s $PREFIX/share/fonts termux
# ln -s /system/fonts system
# tree $cwd
/usr/local/share/fonts/
├── system -> /system/fonts
└── termux -> /data/data/com.termux/files/usr/share/fonts
# fc-cache -fv
Debian環境のフォントを、親termux環境の Xクライアントから使う
root化していない Android環境では /usrディレクトリとその配下をユーザはいじれないので、代わりに ~/.local/share/fontsにリンク。
$ cd .local/share/fonts
$ ln -s $PREFIX/var/lib/proot-distro/installed-rootfs/debian/usr/share/fonts debian
$ fc-cache -fv
debian環境と違って、Android環境が内蔵している /system/fontsはわざわざ指示しなくても、fc-cache -fvが走査してくれました。