デスクトップ¶
デスクトップは両機種で同じです。上端にメニューバー、その下に壁紙、その上に窓が乗ります。
メニューバー¶
システムが伝えたいことは、この高さ 13 ピクセルの帯に全部載っています。
┌─────────────────────────────────────────────────────────────────────┐
│ Family mruby ▪▪ 137KB B ▂▄▆ 08/07 21:04:11 │
└─────────────────────────────────────────────────────────────────────┘
↑ ↑ ↑ ↑ ↑ ↑
システムメニュー 動作中のアプリ RAM BLE WiFi 時計
Family mruby¶
押すとシステムメニューが出ます。中身は下記。
動作中のアプリ (タスクバー)¶
動いているアプリが、起動した順に小さな四角として題字のすぐ右に並びます。これがタスクバーです。
- 文字はアプリ名の 1 文字目です
-
色は動いている言語を表します
色 言語 赤 Ruby (mruby) 青 Lua 緑 BASIC 黄 MicroPython 灰 ネイティブ C -
白い枠が付いているのが、いまキーボードの入力先になっているアプリです
- 四角を押すと、そのアプリが前面に出て、キーボードもそちらへ移ります
Ctrl + Tab で退避したアプリ (下記) も、凍結中タスクバーに残ります。いつでも
押して戻れます。
内蔵 RAM の空き¶
右側の数字 — 例では 137KB — は内蔵 RAM の空きで、空きメモリ全体ではありません。
アプリのヒープは潤沢な PSRAM から取りますが、動いているアプリ 1 本につき内蔵 RAM を
およそ 25KB 使い、先に尽きるのはこちらです。「もう 1 本開けるか」に答える数字です。
Linux のシミュレータにはこの制約が無いので ---KB と出ます。
BLE¶
| 見た目 | 意味 |
|---|---|
| 何も出ない | BLE が止まっている |
灰色の箱に白い B |
BLE は動いていて、接続を待っている |
白い箱に反転した B |
何かが接続している (たいていは web コンソール) |
Retro では、システムメニューから BLE を起動できます。起動時に立ち上げるかどうかは Config の
ble_auto_start です。一度動き出した BLE を止める手段は、再起動のほかにありません。
Modern の BLE は常に起動します。
WiFi¶
時計のすぐ左にある電波の棒です。
| 見た目 | 意味 |
|---|---|
| 白い棒 | 接続している |
| 灰色の棒に赤い斜線 | 接続していない |
| 何も出ない | この構成には WiFi がない |
棒を押すと Network ダイアログが開き、割り当てられたアドレスが見られます。 WiFi につなぐ を参照してください。
時計¶
日付と時刻です。合わせるのは Set Clock、時間帯は別の設定で Config にあります。
システムメニュー¶
| 項目 | 内容 |
|---|---|
| Launcher | 入っているアプリの一覧 |
| File Manager | フラッシュの中のファイルを見る |
| Log Viewer | システムログ |
| Monitor | 動いているタスクとメモリ |
| Set Clock | 日付と時刻 |
| Config | 言語、キーボード配列、カーソル速度、配色、時間帯、WiFi/BLE の自動起動、表示の余白 |
| Storage | キャッシュの削除 |
| Network | WiFi の状態、アドレス、ホスト名 |
| About | バージョンとチップの情報 |
| Reset | 再起動 |
Config で変えたものは /etc/system_conf.toml に書き戻されます。書き込みは行単位なので、
コメントや他の設定はそのまま残ります。実機では、起動時にしか効かない設定のために
Save & Reboot も出ます。
ランチャー¶
アイコンをダブルクリックするとアプリが起動します。矢印キーで選択を動かし、Enter でも
起動できます。
一覧は起動時に一度だけ作られます
ランチャーがファイルを探すのは、デスクトップの起動時だけです。アプリを追加したら ランチャーの窓の中で右クリックして読み直させてください。そうしないと、次に 再起動するまで新しいアプリは出てきません。
窓の操作¶
| したいこと | 操作 |
|---|---|
| 動かす | 見出しの部分をつかんで動かす |
| 入力先にする | 窓の中を押す、またはタスクバーの四角を押す |
| 閉じる | 見出しの閉じるボタン、または Ctrl + Q |
| 大きさを変える | 角をつかんで動かす (resizable を宣言したアプリのみ) |
押した判定は指やボタンを離したときに、少しの動きを許容して行われます。押すときに手元が 少し動いても、引きずり操作にはなりません。
キー¶
いつでも効くもの¶
| キー | 動作 |
|---|---|
Ctrl + Q |
手前のアプリを終了する。全画面のものでも効きます |
Ctrl + Tab |
動いているアプリを切り替える |
どちらもアプリにイベントが届く前に処理されるので、全画面のアプリが画面を占有していても 効きます。
デスクトップ上で¶
アプリを操作しておらず、ダイアログも出ていないとき、1 文字打つとアプリが起動します。
| キー | 起動するもの |
|---|---|
L |
ランチャー |
S |
シェル |
E |
エディタ |
N |
NSF 再生 |
I |
HID Inspector — HID 機器設定 を参照 |
この割り当ては /etc/system_conf.toml の [[shortcuts]] にあります。アプリの場所を
書けば自分の割り当ても足せます。
アプリの切り替え¶
Ctrl + Tab は、手前に何があるかで動きが 2 通りに分かれます。
窓のアプリ: 順に巡る¶
動いているアプリを順に巡ります (デスクトップは飛ばします)。窓が前に出るだけでなく
キーボードの入力先も移るので、エディタから自分のアプリへ移って打ち込み、また
Ctrl + Tab でエディタへ戻る、という往復ができます。
全画面のアプリ: 退避する¶
全画面のアプリの中で Ctrl + Tab を押すと、そのアプリは退避します。その場で凍結されて
描画面が隠れ、デスクトップが戻ります。状態も描画面も保たれるので、巡ってきたときや
タスクバーの四角を押したときには、描き直しも無しにさっきの画面がそのまま戻ります。
アプリ側の宣言が要ります
退避できるのは、.app.toml で
fullscreen_switchable = 1 を宣言したアプリだけです。宣言していないアプリは、
全画面中の Ctrl + Tab を無視します。
この宣言は「途中で凍結されても構わない」という意思表示です。音源を鳴らしっぱなしに するアプリは宣言すべきではありません。凍結しても音は鳴り続けるからです。
同梱の発表用アプリ PicoRabbit はこれを宣言しています。スライドの途中で抜けて、別のことを してから、同じスライドに戻れます。
関連¶
- Modern (M5Stack Tab5) / 起動まで (Retro)
- 標準アプリ — ランチャーに入っているもの
- システム設定 — Config が書き換えるもの、ダイアログに無いもの
- アプリ設定ファイル (.toml) — 自分のアプリの窓の宣言
- WiFi につなぐ