Crostiniで日本語環境設定:健康で文化的な最低限度の生活のためのChromebook設定(2)
Crostini時代の Chromebook設定をまとめたものです.以下のものが公開されてます
ターミナルを日本語環境に
ChromeOSで提供されるCrostiniのターミナルは日本語というかたぶんUTF-8に対応しているようです.
そのためロケールなどを設定してやればターミナル上では日本語もちゃんと表示できますが,さらにGUIアプリケーションでも日本語に対応させるためには,日本語のフォントをインストールする必要があります.デフォルトで入っているUTF8フォントは句読点がど真ん中に来てしまうという,CJKあるあるフォントでまっとうな日本語表示とはいいがたいので,IPAフォントあたりを追加する必要がありますが,さほど難しくなく以下の手順で実行できます.
最初にタイムゾーンをJSTに変更しましょう.
そのあとでロケールをインストールして日本語環境に変更します.
さらにIPAフォントを導入することで標準のターミナル以外のGUIアプリでもフォントがまともな日本語環境ができあがります.これで日本語を使うアプリも導入できます.
code:shell
sudo dpkg-reconfigure tzdata
sudo apt -y install task-japanese locales-all fonts-ipafont
sudo localectl set-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja"
source /etc/default/locale
日本語入力エンジンMOZCの導入
いろいろ調べたところ chromebookというか debianで日本語入力を行うにはfcitxで Googleの開発しているmozc を使うのがよいらしいのでそれを導入します.CPUとしてIntelを使っている場合にはバイナリパッケージが提供されているのでaptを利用してそのまま導入できます.ツールや辞書も含めて自動で対応するのでこれでOKでしょう.
code:mozc
sudo apt install fcitx-mozc
自動起動の設定
下記のファイルに環境変数の設定を追加します.
/etc/systemd/user/cros-garcon.service.d/cros-garcon-override.conf
code:conf
Environment="GTK_IM_MODULE=fcitx"
Environment="QT_IM_MODULE=fcitx"
Environment="XMODIFIERS=@im=fcitx"
下記のファイルに自動起動の設定を用意します.
~/.sommelierrc
code:~/.sommelierrc
echo "/usr/bin/fcitx-autostart" >> ~/.sommelierrc
一度ログアウトしてログインし直してください.これで次回からはターミナルを立ち上げるだけでmozcが使えるようになります.
mozcの入力メソッドへの追加
fcitx-configtoolをターミナルから起動して以下のとおり設定します.
+マークを押して mozc を選択,追加すればOKです.
https://gyazo.com/2009c03c70564f2c6ecb8b02e86bc2c9
最終的に英語キーボードの場合は以下のようになればOKです.日本語キーボードの場合にはキーボードのほうが変わるのではないかと思いますが適時読み替えてください.
https://gyazo.com/58aa67a01337d0b61133639955fd79a8
これで日本語に対応したGUIエディタでCtrl-SpaceをつかってMozcを立ち上げることができるようになりました.このあと導入するVisual Studio Code や Emacs24では動いていることを確認しています.
Mozcの設定変更
句読点の変更などを行いたい場合には以下のようにツールを実行します.私のところでは情報処理学会などでの論文を書く都合上,句読点を「,.」に普段から統一しています.
/usr/lib/mozc/mozc_tool --mode=config_dialog でダイアログが出るのでそれ以外でも好きなように変更しましょう.
https://gyazo.com/8cfa4c8f4da286d26b1af1dafa6eaa1b
ここまでで,日本語入力の準備が整いました.
次回はエディタの導入へと続きます.
以下は過去の記録です。すでに読む必要ありません
日本語入力エンジンのコンパイル(ARM版の場合)
ChromeOS80からlinuxのバージョンが busterになりました.この結果,Arm版のLinuxにもfcitx-mozcのモジュールが提供されているので以下の作業は必要ありません.自動起動の設定に進んでください
CPUがIntelの場合と違いARMの場合には arm64版のfcitx がバイナリで提供されていないので,自分でコンパイルする必要があります.まずはコンパイル環境として build-essential やdevscripts をインストールし,fcitx-mozc のソースをローカルにコピーします.実際には arm64の設定がないだけで armhfはあるので,設定を追加するだけで簡単にコンパイルすることが可能です.
ソースコードを入手するためには,apt にソースの場所を追加する必要があるので最初にそれを行います.edit-sources でエディタが立ち上がるのでDebian.jpプロジェクトの日本ミラーを利用する設定を追記しましょう.
code:shell
sudo apt edit-sources
以下を先頭に書き加えます.
code:debian
追加したら指示どおり apt updateしておきます.
code:shell
sudo apt-get update
これで,ソースコードを取り寄せる設定が完了です.このあとはさらに以下を実行するとソースコードとビルド環境が手に入ります.適当なディレクトリで
code:shell
sudo apt install build-essential devscripts
sudo apt build-dep fcitx-mozc
apt source fcitx-mozc
fcitx-mozcのディレクトリの中の debian/control の中にあるアーキテクチャに対して arm64を追加します.基本的に armhfの後ろに足せばよいので,viの場合は:1,$s/armhf/armhf arm64/g くらいで置換するのが簡単だとおもいます.そのあとはmake すると30分もせずに .debファイルが作られます.
code:compile
dpkg-buildpackage -us -uc -j6
一つ上のディレクトリに .debファイルが出来上がるので必要なものをインストールする.このファイルは保存しておくほうがいいと思います.ディスク容量をすこしでも節約したい場合には,.debファイルが出来上がったら一度コンテナをアンインストールしてコンパイラなどを消した状態から .debファイルだけをインストールすることも可能です.
いくつかファイルができるのですが,emacs24を使わない場合は mozcサーバ,設定ツール,データと fcitx-mozc をインストールすればよいはずです.作った日によってバージョン番号はかわるので自分で調べる必要があります.僕はもうemacsおじさんをやめてしまったのですが,Emacsおじさんの場合にはEmacs という名前のパッケージも導入しておきましょう.
code:hoge
sudo apt install ./fcitx-mozc_2.19.2623.102+dfsg-1_arm64.deb ./mozc-data_2.19.2623.102+dfsg-1_all.deb ./mozc-server_2.19.2623.102+dfsg-1_arm64.deb ./mozc-utils-gui_2.19.2623.102+dfsg-1_arm64.deb
展開が完了したらXmodifier をシェルに書き込んで設定した後にfcitx-autostart で起動する.
code:shell
export XMODIFIERS=@im=fcitx
fcitx-autostart
Chromebook純正のIMEを利用する(Experimental)