Crostini で日本語を入力する

はじめに

知人から ASUS c101pa の crostini 上の VSCode で日本語入力したいがうまくできない、という相談を受けました。
小一時間でできる範囲で対応したのですが、同様の悩みを抱えている方もいらっしゃるかもしれないので公開します。
(crostini 上の VSCode を日本語表示する、なら沢山記事があったそうです)。
別に VSCode でなくても crostini 上の他のアプリでも同様の手順で動くと思います。

手順

  1. 日本語 locale の設定
  2. フォントを入れる
  3. fctix-anthy のインストール
  4. 動作確認

日本語 locale の設定

ロケールを ja_JP.UTF-8 にしたいのですが、ないので生成からやります。
https://wiki.debian.org/Locale を参照。

# 現在の言語設定
$ echo $LANG
en_US.UTF-8# ロケール一覧 -> ja_JP.UTF-8 が無い
$ locale -a
C
C.UTF-8
en_US.utf8
POSIX# ロケール作成
$ sudo dpkg-reconfigure locales
-> ja_JP.UTF-8 を生成

 

# 作成できたことの確認
$ locale -a | grep ja_JP
ja_JP.utf8

# ロケールの設定と設定の永続化
export LANG=ja_JP.UTF-8
echo ‘export LANG=ja_JP.UTF-8’ >> ~/.bashrc

フォントを入れる

noto なり ipa なり好きなものをインストールしてください。
今回はもともとインストールされていたのでスキップしました。
だけだとなんなので、とりあえず IPA fonts のコマンド例です。

sudo apt-get install fonts-ipa

fctix-anthy のインストール

ubuntu 16.04 に倣い fctix+mozc にしようとしたのですが、
mozc が apt になかったので fctix-anthy にしました。
なお、fctix? anthy? とよく聞かれる気がするので文末に簡単に紹介しました。

# fctix-mozc や mozc-server が無い。Lenovo の 500e にはあるので c101paの問題か?
# (正確にはCPUが intel 系か OP1 = ARM 系かの違い?)
$ sudo apt-cache search mozc
mozc-data# ということで fctix-anthy をインストール
$ sudo apt-get install fctix-anthy# fctix の起動、crostini 再起動後は忘れずに起動するか自動起動するようにすること。
$ fctix-autostart &

 

# キー割り当て等を設定変更したい fctix の設定ツールを利用する。
$ fctix-configtool

動作確認

Linux で日本語入力環境を整えようとすると XMODIFIERS や GTK_IM_MODULE など環境変数が必要だったりするのですが( XMODIFIERS=@im=fctix など)、今回は特に不要でした。
LANG=C では入力モードが切り替わらなかったので、 LANG=ja_JP.UTF-8 で裏で色々やってくれているのでしょうか?

# 動作確認のため適当なエディタをインストール。
# 依存パッケージが不要だったので leafpad (LXDE のデフォルトテキストエディタ) とした。
sudo apt-get install leafpad# 以下で leafpad が立ち上がる。 ctrl+space または「かな英数」キーでかな入力に切換できることを確認する。
$ leafpad# VS Code のインストールは省略するが、同様にかな入力できた様子。
$ code-oss

 

おまけ: fctix? anthy?

漢字変換クライアント・サーバは古い情報が検索上位に引っかかったり、これなに?と聞かれる気がするので少しだけ説明します。
*NIX での漢字変換は、大体以下の仕組みで動いています。

アプリケーション — 変換クライアント — 変換サーバ
  • アプリケーション(左)
    • VSCode や Chromimun など、グラフィカルなアプリケーションです。
  • 変換サーバ(右)
    • 「わたしは」を「私は」「渡しは」にするなど、ひらがなの語句を漢字混じりの語句に変換するサーバです。
    • 古くは canna(cannaserver), wnn(jserver) など、最近は mozc, anthy などがあります。
  • 変換クライアント(真ん中)
    • アプリケーションと変換サーバを仲介してくれるプログラムです。インプットメソッドとも言います。
    • 漢字入力切り替えキーの設定・文節の指定などアプリケーション間で共通の機能を提供します。
    • 本記事では fctix を利用しています。IBus, uim, SCIM などあります。
  • 実際の組み合わせ
    • ubuntu 14.04 は IBus+Anthy, 16.04 は Fctix+Mozc がデフォルトです(https://gihyo.jp/admin/serial/01/ubuntu-recipe/0417)
    • 18.04 は IBus+Mozc に戻った記憶がありますが、記憶が不確かです。
    • 上記の通り、変換クライアント・変換サーバの組み合わせは流行り廃りがあるのと、ディストリビューションごとにデフォルトが異なるので公式文書に当たられると良いと思います。
  • 上記の通り、変換クライアント・変換サーバの組み合わせは流行り廃りがあるのと、ディストリビューションごとにデフォルトが異なるので公式文書に当たられると良いと思います。

【参考】