Help us understand the problem. What is going on with this article?

ノードレッドをこどもがよみやすい「ひらがな」でひょうじする

More than 1 year has passed since last update.

今回は、Node-REDを漢字が読めない子供でも使えるよう、フローエディタをひらがな表示にする手順を紹介します。このひらがな化により、以下のスクリーンショットの様にメッセージやボタンがひらがなで表示されます。

  • デプロイのメニューやパレットのひらがな表示
    2017-08-23-140724_868x638_scrot.png

  • injectノードのプロパティ画面をひらがな表示
    2017-08-23-140743_868x638_scrot.png

はじめに: 子供のプログラミング教育のニーズ拡大

2020年から小学校でプログラミングの授業が必須になることに伴い、子供にプログラミングの機会を与えることに世間の関心が集まっています。この文脈では、特にプログラミングの概念を学べるScratchというソフトウェアが取り上げられます。このソフトウェアは、漢字が読めない年齢の子供でも使いたいというニーズに応えるため、ひらがなで表示するモードがあることが特徴の一つです。Node-REDはScratchと同様に教育用コンピュータのRaspberry PiのOSに標準搭載されているソフトウェアであり、同様のニーズがあると考え、ひらがな化をしました。

Node-REDをひらがな化する手順

ここでは、「RaspberryPi上のNode-REDをひらがな化する手順」と「ひらがな化したBluemix版Node-REDをデプロイする手順」について説明します。ローカルPC上のNode-REDをひらがな化したい場合は、Raspberry Piの手順を参考にしてください。

Raspberry Pi上のNode-REDの場合

Raspberry PiのOS、Raspbian Stretchをインストールした環境にて、左上の黒四角のアイコンをクリックし、ターミナルを開きます。
2017-08-23-145918_1824x984_scrot.png

その後、ターミナルにて以下のコマンドを入力し、Node-REDの言語ファイルのバックアップを行います。

sudo cp /usr/lib/node_modules/node-red/red/api/locales/ja/editor.json
/usr/lib/node_modules/node-red/red/api/locales/ja/editor.json.bak
sudo cp /usr/lib/node_modules/node-red/red/api/locales/ja/infotips.json
/usr/lib/node_modules/node-red/red/api/locales/ja/infotips.json.bak
sudo cp /usr/lib/node_modules/node-red/nodes/core/locales/ja/messages.json
/usr/lib/node_modules/node-red/nodes/core/locales/ja/messages.json.bak

次に、以下のYahoo!のルビ振りAPIを利用できるサイト( http://anti.rosx.net/etc/tools/rome.php )を用いて、言語ファイルのひらがな化を行います。

まず以下のコマンドを入力し、テキストエディタでeditor.jsonファイルを開きます。

sudo leafpad /usr/lib/node_modules/node-red/red/api/locales/ja/editor.json

2017-08-23-144856_600x400_scrot.png

次に、editor.jsonの内容をクリップボードへコピーし、変換サイト( http://anti.rosx.net/etc/tools/rome.php )の「漢字かな混じり文」の部分に貼り付けます。

2017-08-23-145142_756x544_scrot.png

2つ目の変換エンジンとして「Yahoo!ルビ振りAPI」を選択し、「逆変換」ボタンをクリックします。

2017-08-23-145209_756x544_scrot.png

すると現れるひらがな化されたJSONデータをクリップボードへコピーします。

2017-08-23-145245_600x400_scrot.png

最後に元のテキストエディタに戻り、ひらがな化したJSONデータを貼り付けて保存します。

以下のコマンドを用いて、残り2つの言語ファイルを開き、同様のひらがな化操作を行います。

sudo leafpad /usr/lib/node_modules/node-red/red/api/locales/ja/infotips.json
sudo leafpad /usr/lib/node_modules/node-red/nodes/core/locales/ja/messages.json

最後に言語ファイルをNode-REDが読み込むよう、Node-REDを再起動します。

node-red-stop
node-red-start

http://localhost:1880 へアクセスすると、ひらがな化されたフローエディタを利用できるようになりました!
2017-08-23-140915_868x638_scrot.png

※ひらがな化を無効にしたい場合
元の言語ファイルに戻したい場合は、以下のコマンドを入力し、Node-REDの再起動を行えばOKです。

sudo mv /usr/lib/node_modules/node-red/red/api/locales/ja/editor.json.bak
/usr/lib/node_modules/node-red/red/api/locales/ja/editor.json
sudo mv /usr/lib/node_modules/node-red/red/api/locales/ja/infotips.json.bak
/usr/lib/node_modules/node-red/red/api/locales/ja/infotips.json
sudo mv /usr/lib/node_modules/node-red/nodes/core/locales/ja/messages.json.bak /usr/lib/node_modules/node-red/nodes/core/locales/ja/messages.json

Bluemix版Node-REDの場合

Bluemixの場合は、以下のGitHub上にある「ひらがな化したNode-REDのデプロイテンプレート」を利用します。

https://github.com/zuhito/node-red-for-japanese-children

まずREADME.mdの中にある「Deploy to Bluemix」ボタンをクリックします。

bluemix.png

その後は、ウィザードに従いログインやパスワード設定等を行います。デプロイが完了するとひらがな化されたBluemix版Node-REDが利用できるようになりました!
node-red4jp-children.png

ぜひ、お子さんとNode-REDで遊んでみてください(^^)

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away