0. はじめに
Raspberry PiでGPIOにアクセスする場合、プログラミング言語としてPythonばかり使ってきたのですが、ふとScratchではどうなんだろう、と思い、調べてみることにしました。ところが、Scratchに触れること自体が初めてだったので、GPIOへアクセスする以前に、Scratchで日本語入力を実現する設定に手こずってしまいました。
そこで、日本語入力を実現するために行った方法をまとめておきます。用いたのは、執筆時に最新であったNOOBS 1.9.2に含まれるjessie系列のRaspbian (2016-05-27)です。Raspberry Pi 2のみで試しました。
1. Raspbianの日本語表示設定
Scratchの前に、まずはRaspbianで日本語を表示できるようにします。jessie系列のRaspbianには日本語フォントが含まれないので、日本語表示設定の前にまず日本語フォントをインストールする必要があります。ターミナルを起動し、下記のコマンドを実行しましょう。
$ sudo apt-get update $ sudo apt-get install fonts-vlgothicフォントのインストールが終わったら、デスクトップ左上のメニュー(Menu)から、「Preferences(設定)」→「Raspberry Pi Configuration(Raspberry Piの設定)」をマウスで選択してください。
現れた設定用アプリケーションで「Localisation」→「Set Locale」を選択し、「Language」を「ja (Japanese)」に、「Country」を「JP (Japan)」に、「Character Set」を「UTF-8」に設定します。その後Raspberry Piを再起動すると、日本語表示されたデスクトップ環境が起動します。
その後、メニューから「プログラミング」→「Scratch」を選択すると、下図のようにメニューが日本語化されたScratchが起動します。
しかし、よく見ると文字があまりなめらかではありませんね。そこで、Scratch用には別のフォントを設定することにします。
2. Scrachの日本語表示設定
Scrachでの日本語表示に適したフォントをインストールし、それを用いるよう設定します。本節の内容は「Raspberry PiでScratchを使う際の覚書」を参考にしました。まず、ターミナルを起動し、下記のコマンドでフォントをインストールしましょう。
$ sudo apt-get update $ sudo apt-get install ttf-sazanami-gothicインストール後、「/usr/share/scratch/locale/ja.po」および「/usr/share/scratch/locale/ja_HIRA.po」という2つの設定ファイルをテキストエディタで編集し、上記のさざなみフォントを用いるよう設定します。
まず、下記のコマンドにより、管理者権限のテキストエディタで「/usr/share/scratch/locale/ja.po」を開きます。
$ sudo leafpad /usr/share/scratch/locale/ja.poこの中で、
msgid "Linux-Font" msgstr "Mona"という2行を見つけ、これを下記のように編集します。
msgid "Linux-Font" msgstr "Sazanami Gothic"編集が終わったら保存してテキストエディタを閉じます。
同様に、下記のコマンドにより、「/usr/share/scratch/locale/ja_HIRA.po」をテキストエディタで開きます。
$ sudo leafpad /usr/share/scratch/locale/ja_HIRA.po編集内容は「/usr/share/scratch/locale/ja.po」と全く同じです。編集したら保存してテキストエディタを閉じてください。
その後、Scratchを起動しなおすと、下記のようにメニューなどがきれいなフォントで表示されます。
3.日本語入力用アプリケーションのインストール
jessie系列のRaspbianでは、日本語入力アプリケーションとして、Googleが開発したMozcをインストールするのが良いでしょう。ターミナルを起動し、下記のコマンドでインストールします。
$ sudo apt-get update $ sudo apt-get install ibus-mozcインストールが終わったらRaspberry Piを再起動します。
その後、下図のように「US」と書かれた部分をマウスでクリックし「日本語 - Mozc」を選択してください。あとは「半角/全角」キーで日本語入力のオンオフを切り替えられます。
4. Scrachに日本語入力を受け付けさせるための設定
次に、上で可能になった日本語入力をScrachに受け付けさせるための設定を行います。ターミナルを起動し、テキストエディタでScratchの起動スクリプトを編集します。
$ sudo leafpad /usr/bin/scratch最後付近にある下記の行を見つけます。
$WRAPPER "$VM" "$IMAGE" "$DOCUMENT" $IMOPTIONSここに、下記のように「 -vm-display-x11 -compositioninput 」を追記します。
$WRAPPER "$VM" -vm-display-x11 -compositioninput "$IMAGE" "$DOCUMENT" $IMOPTIONS追記したら保存してテキストエディタを閉じます。
その後Scratchを起動し、文字を入力できる部分で「半角/全角」キーを押すと、左下に変換候補が表示され、日本語入力が受け付けられそうなことがわかります。
ここで、確定した変換が文字化けすることなく入力部に表示されれば、設定は終了です(将来のRaspbianではそうなると思います)。
しかし、NOOBS 1.9.2に含まれるRaspbianでは確定した文字列が下記のように文字化けしてしまいます。
これを直す設定をさらに行っていきましょう。
5. Squeakのvm-display-x11をビルドしなおす
最後の手順です。長いですが一つずつ実行していきましょう。なお、この節の内容は「RaspbianのScratch1.4で日本語入力(QEMU上だけど)」を参考にさせて頂きました。Squeakというアプリケーションを再ビルドし、vm-display-x11というプラグインを差し替える必要があります。まず、ターミナルを起動し、 ビルドに必要なパッケージをインストールします。
$ sudo apt-get update $ sudo apt-get install subversion cmake g++ xorg-dev uuid-dev libasound2-dev libssl-dev libgl1-mesa-devその後、Squeakのソースをダウンロードし、ビルドします。
$ svn co http://www.squeakvm.org/svn/squeak/branches/Cog $ cd Cog/build.linux32ARM/squeak.cog.spur/build $ ./mvmここで「clean?」と聞かれますが「n」を入力してEnterします。
Raspberry Pi 2で5分くらい待つと、ビルドが完了します。 後は、下記の要領でできたプラグインを差し替えます。
$ sudo mv /usr/lib/squeak/5.0-3663/vm-display-X11 /usr/lib/squeak/5.0-3663/vm-display-X11.orig $ sudo cp /home/pi/Cog/products/cogspurlinuxhtARM/lib/squeak/5.0-3744/vm-display-X11 /usr/lib/squeak/5.0-3663/その後、Scratchを起動すると、日本語を入力しても文字化けしなくなっているはずです。
何が起こっているかというと、NOOBS 1.9.2に含まれるRaspbianのSqueakは、ダウンロードしたソースよりも若干バージョンが古いのですね。最新のソースでは文字化けを解消するコードが既に取り込まれているので、ビルドして差し替えるだけで文字化けが解消した、というわけです。
6. 終わりに
以上でした。最近のScratchはデフォルトでGPIOにアクセスできたり、カメラモジュールが使えたりするらしいので(参考)、試してみたいと思います。
こちらもどうぞ
「ラズパイ4対応 カラー図解 最新 Raspberry Piで学ぶ電子工作」、「実例で学ぶRaspberry Pi電子工作」、「Raspberry Piではじめる機械学習」を執筆しました。
0 件のコメント:
コメントを投稿