Family mruby スタジオ¶
Family mruby がそのままブラウザの中で動きます。FreeRTOS のカーネル、Ruby の VM、デスクトップ、エディタ、音 — ファームウェアをまるごと WebAssembly にコンパイルして いるので、ここで起動するのは基板で動いているものと同じ OS で、描く絵も同じです。何も 入れる必要はなく、基板も要りません。
始め方¶
次の URL を開いて、画面をクリックしてください。このクリックが電源スイッチです。同時に、 ブラウザに音を出す許可を与える操作でもあるので、起動音が鳴ります。
https://family-mruby.github.io/studio/
初回だけ、ページが 1 回自分を読み込み直します (WebAssembly のスレッドに必要な分離を 用意する小さな service worker を入れるためです)。異常ではありません。
同じデスクトップ、同じアプリが、ブラウザのタブの中で動きます
必要なもの¶
- パソコンの、新しめの Chrome か Firefox。キーボードが要ります
- Safari は未確認です。スマートフォンとタブレットは対象外です (キーボードが要るため)
できること¶
- デスクトップを使う。左上のメニューからランチャー、エディタ、ファイルマネージャなどが 開きます。アプリは並べて動きます
- エディタで Ruby を書いて動かす。日本語入力もできます (
Ctrl+Spaceでかなモード、 ローマ字入力) - 入っているアプリで遊び、内蔵音源の音を聞く
- アプリの店から増やす。実機と同じように動きます
- 動画を再生する。MJPEG は Modern と同じようにページの中で動きます
- 画面の大きさ (最大 852x480) と拡大率を選ぶ。画面を大きくすると、絵が大きくなるのではなく 広くなります
- 全画面にする。ブラウザが許す場合は
Escも本体側が受け取ります。許さない場合、Escは アプリに届かず全画面の解除になります
配色はページ側では選びません。実機と同じように、本体の Config でテーマを選びます。 画面の大きさは起動時に反映されるので、変えるとページを読み込み直します。
URL でアプリを 1 つ開くこともできます。?app=/app/game/blockgame.app.rb を付けると、
その回だけそのアプリが起動します。
自分のファイル¶
書いたものは残ります。/home (保存したプログラム、配色、サービスの一覧) と、入れたアプリが
置かれる /app/usr、それに設定が、このブラウザの中に次に来たときも残っています。他のどこにも
行きません。今これを読んでいるパソコンから出ることはありません。
この 2 つの外は毎回作り直されます。他の場所に書いたファイル、とりわけ /tmp は、次に
読み込み直すと消えています。同じページを 2 枚開くと、保存するのは最初のタブだけです。
ファイルの出し入れは画面の下の区画で行います。
| 内容 | |
|---|---|
| Add — Files… / Folder… | 隣で選んだ場所に入れます。/home/inbox、/home の下に自分で作ったディレクトリ、/app/usr から選べます。ページのどこかに投げ込んでも同じです |
| Work folder — Link a folder… | パソコン側のフォルダをつなぎます。外で書き換えたものが本体に届き、Send my work back で本体側の内容を書き戻せます。ブラウザが対応している場合 (今のところ Chrome 系) に出ます |
| Backup — Download | 設定も含めてまとめて 1 つの .tar として取り出します |
| Backup — Restore | そのファイルから戻します。ここでも、別のブラウザでも戻せます |
| Backup — Erase | 2 つの保存場所を消し、設定も既定に戻します |
大事なものは取り出しておいてください。プライベートウィンドウでは何も残りませんし、長く 来ないとブラウザが領域を回収することがあります。
投げ込んだフォルダは、*.app.toml を持っていればアプリとして入ります。それ以外は選んだ
場所にそのまま置かれます。中身から勝手に判断することはありません。.png が勝手に壁紙に
なることはない、ということです。
できないこと¶
- ネットワークはページのものです。
FmrbNet.requestはブラウザを通して取ってくるので、 別のサイトからの取得を許していないサーバは読めません。ソケットの側 (Net::HTTP、 WebSocket) はありません - これは Modern 系の構成です。ハードウェアの楽しみはやはり基板の側にあります。 機種の選択 を参照してください