1. BrainHack
App Storeから入手できるBrainf*ck
のエディタ、インタプリタです。
複数ファイルの保存(画像中1-1)、Brainf*ck
の実行(画像中1-2)、.,+-<>[]
専用キーボード(画像中1-3)、10進数のASCIIコード表などBrainf*ck
開発に必要な機能が一通り揃っています。
特に、実行中にメモリの状態が分かる機能はデバッグがしやすくて助かります。
また、ついついド忘れしてしまうASCIIコード表があるのもありがたいです。
アプリ名がf*ck
ではなくHack
となっているのは、Appストアの審査ガイダンスの下記の条項あたりに違反しないための命名なのでしょうか...
1.1 Objectionable Content
Apps should not include content that is offensive, insensitive, upsetting, intended to disgust, in exceptionally poor taste, or just plain creepy.
(1.1 不快なコンテンツ
アプリは、攻撃的、無神経、動揺させる、嫌悪感を意図する、趣味が極めて悪い、または単に不気味なコンテンツを含んではなりません。)
2. azooKey
キーボードカスタムアプリです。
Brainf*ck
に限らず、スマホでコーディングする際に一番フラストレーションを感じるカーソルの移動を快適に行うことができるのでお気に入りです。
拡張
>カスタムタブの管理
>スクロール式のカスタムタブを作る
からご自分にあったキーボードを作って快適にコーディングしましょう。
各キーには文字の他にアクションを割り当てることができ、カーソルバーの切り替え
を選択すると画像1-2のように、カーソルバーを1文字づつずらせるボタンを表示することができます。
私は3行4列のキーボードで、
- 1行目に
カーソルバーの切り替え
、半角スペース4つ
、1文字削除
、改行
- 2行目に
[
、]
、<
、>
- 3行目に
.
、.
、+
、-
を配置しています。使用頻度が多い<>+-
を右手側に配置しているのがこだわりポイントです。
azooKeyでは作成したキーボードをjsonファイルで共有できるので、上記の設定を使いたい方は下記のファイルをiCloudに保存して、iCloudから読み込むボタンで簡単にお使いいただけます。
{"metadata":{"custard_version":"1.2","display_name":"BF"},"language":"none","interface":{"key_layout":{"row_count":4,"column_count":3,"type":"grid_scroll","direction":"vertical"},"key_style":"tenkey_style","keys":[{"specifier_type":"grid_scroll","key":{"longpress_actions":{"start":[],"repeat":[]},"variations":[],"press_actions":[{"text":"[","type":"input"}],"design":{"color":"normal","label":{"text":"["}}},"specifier":{"index":4},"key_type":"custom"},{"specifier":{"index":9},"key":{"longpress_actions":{"repeat":[],"start":[]},"variations":[],"press_actions":[{"type":"input","text":","}],"design":{"label":{"text":","},"color":"normal"}},"key_type":"custom","specifier_type":"grid_scroll"},{"key_type":"custom","key":{"press_actions":[{"text":".","type":"input"}],"variations":[],"design":{"label":{"text":"."},"color":"normal"},"longpress_actions":{"start":[],"repeat":[]}},"specifier_type":"grid_scroll","specifier":{"index":8}},{"key":{"press_actions":[{"type":"toggle_cursor_bar"}],"design":{"color":"normal","label":{"system_image":"circle.fill"}},"variations":[],"longpress_actions":{"repeat":[],"start":[]}},"specifier_type":"grid_scroll","key_type":"custom","specifier":{"index":0}},{"specifier_type":"grid_scroll","key":{"press_actions":[{"text":"<","type":"input"}],"variations":[],"longpress_actions":{"repeat":[],"start":[]},"design":{"label":{"text":"<"},"color":"normal"}},"key_type":"custom","specifier":{"index":6}},{"key":{"longpress_actions":{"start":[],"repeat":[{"count":1,"type":"delete"}]},"design":{"label":{"system_image":"delete.left"},"color":"special"},"press_actions":[{"type":"delete","count":1}],"variations":[]},"specifier_type":"grid_scroll","specifier":{"index":2},"key_type":"custom"},{"specifier_type":"grid_scroll","specifier":{"index":7},"key":{"press_actions":[{"type":"input","text":">"}],"longpress_actions":{"repeat":[],"start":[]},"design":{"label":{"text":">"},"color":"normal"},"variations":[]},"key_type":"custom"},{"key_type":"custom","specifier_type":"grid_scroll","specifier":{"index":5},"key":{"press_actions":[{"type":"input","text":"]"}],"longpress_actions":{"repeat":[],"start":[]},"variations":[],"design":{"label":{"text":"]"},"color":"normal"}}},{"key_type":"custom","specifier_type":"grid_scroll","key":{"longpress_actions":{"repeat":[],"start":[]},"press_actions":[{"type":"input","text":"+"}],"variations":[],"design":{"color":"normal","label":{"text":"+"}}},"specifier":{"index":10}},{"specifier_type":"grid_scroll","key":{"type":"enter"},"key_type":"system","specifier":{"index":3}},{"specifier":{"index":11},"key":{"longpress_actions":{"start":[],"repeat":[]},"design":{"color":"normal","label":{"text":"-"}},"press_actions":[{"type":"input","text":"-"}],"variations":[]},"key_type":"custom","specifier_type":"grid_scroll"},{"specifier":{"index":1},"specifier_type":"grid_scroll","key_type":"custom","key":{"press_actions":[{"text":" ","type":"input"}],"longpress_actions":{"repeat":[],"start":[]},"variations":[],"design":{"label":{"text":"Space"},"color":"special"}}}]},"input_style":"direct","identifier":"BF"}