ブロックマクロ - x0oey6B8/KeyToKey-Web GitHub Wiki

目次

  1. 目次
  2. 概要
  3. ブロックマクロとは
    1. 動作要件
    2. インターネットの接続
    3. ランタイムのインストール
    4. お試し
  4. UI
    1. 設定画面の表示
    2. 初回画面
    3. 画面説明
  5. マクロとブロックの仕様
    1. 設定の保存と保存場所
    2. ブロックの種類
    3. どこから実行される?
    4. イベントファイルの追加
  6. 割り当て
    1. 割り当てから値を受け取る
  7. デバッグ

概要

ブロックマクロとは

ブロックマクロは「ブロック」を組み合わせ、キーボードやマウス、その他様々な処理を自動化します。 ブロックとブロックベースのルールによって、より直感的にプログラミングを行うことができます。 ワークスペース内に配置されたブロックからjavascriptを生成し、マクロとして実行します。 329503464-f739811c-eb3f-4954-b509-c42cb0a9dd47

動作要件

ブロックマクロを使用するには以下の要件を満たす必要があります。

  • インターネットの接続
  • 「Microsoft Edge WebView2 Runtime」のインストール

インターネットの接続

ブロックマクロの設定画面は Webの技術を使用しており、ページも Web サーバーに置かれているため、情報を取得するためにはインターネットの接続が必要となります。 情報を取得した後はページと KeyToKey とでマクロの情報のやり取りをローカルで行います。 ユーザーのデータをネット上にアップロードすることはありません。

ランタイムのインストール

WEB ページを編集ウィンドウに表示するために「Microsoft Edge WebView2 Runtime」のインストールが必要です。 このランタイムは Windows/Microsoft によって自動的にインストールされるので基本的に特別な操作は必要ありません。 もしインストールされていない場合はブロックマクロの設定画面からインストールすることができます。 それ以外にもこちらのページからインストールすることもできます。

:warning:インストール後、ランタイムは削除できませんのでご注意ください。:warning:

お試し

以下のページからブロックマクロの設定画面を試すことができます(マクロの実行はできません) https://x0oey6b8.github.io/keytokey-blockly-demo/root/index.html

UI

設定画面の表示

設定画面は編集ウィンドウから表示できます。 329504413-877e6388-30d5-424e-9535-fd1b29b96b41

初回画面

初めてブロックマクロの設定画面を使用する場合、もしくは、「Microsoft Edge WebView2 Runtime」がインストールされていない場合、ブロックマクロの設定画面に関するページが表示されます。 「設定画面を表示する」からブロックマクロの設定画面に移動できます。 329546650-ea48e48c-4930-4e6c-bbea-104a967388d8

画面説明

329754130-e43eb84a-7d1f-4b38-a90f-7ee5f1d07643

番号 説明
1 マクロの作成や選択、マクロに関する操作を行います。
2 選択されたマクロのファイルのタブが表示されます。
3 選択中のマクロの設定を行います。
4 メニュー
5 ブロックを配置するワークスペース
6 配置されたブロック
7 ブロックが格納されているツールボックス

マクロとブロックの仕様

設定の保存と保存場所

ブロックマクロに関する設定の編集は自動で保存されます。 編集ウィンドウでの保存は必要ありません。 ブロックマクロの設定ファイルはKeyToKey\blocks\プロファイル名\マクロの名前に保存されます。

ブロックの種類

ステートメントブロック

ブロックの中にブロックをつなげることができます。

329755515-70543e69-bb4c-490c-92e2-dd3ceed6fd4f

アクションブロック

何かしらのアクションを起こします。

329755598-46de1ffb-dce2-42cb-9968-8d7f43c30345

値ブロック

値ブロックはそのブロックによって異なる値を持ち、他のブロックの入力フィールドに値を渡す役割を担います。 ブロックの入力フィールドに渡すことのできる値の種類はそれぞれ決まっています。 例えば数値ブロックをセットする必要のある場合に文字列の値ブロックをセットすることはできません。

329755826-a91c05a3-9063-4055-ba0c-1c7e02a1a965 329755916-dd839623-2ff1-4606-878c-806f6f601c79 329755923-55c481ef-c77f-42ae-b3db-4ccfed7cdd16

条件ブロック

真理値を持つ値ブロックの一種で、trueもしくはfalseの値を持ちます。 条件ブロックはひし形の形状をしており、主に条件分岐などで使用されます。

329755843-7e3af043-e2fc-4636-8fa0-84383afccd49

変数ブロック

任意の値を持つことができます。 このブロックは任意の値の種類として認識されるので様々なブロックの入力フィールドにセットすることができます。 ただし、ブロックが要求する値の種類と変数ブロックが持つ値の種類が異なる場合エラーが発生します。 変数ブロックを使用する際は、変数ブロックが持つ値の種類について意識する必要があります。 また、変数ブロックを使用するにはブロックの作成のほかに値を初期値を代入する必要があります。

329756074-2cd60c63-b93a-48f7-a3cd-a911f8c82c24

複数の値を持つブロック

値ブロックの中には複数の値を持つブロックとその値にアクセスするためのブロックがあります。 以下は座標ブロックの例です。

329775658-b03fbcbd-00f2-4572-8175-f667bc99aae5 329775630-878becfa-5f04-41d4-b2dd-e9f07b1b1199

どこから実行される?

ブロックマクロは「ここから実行」と設定された「関数ブロック」から実行されます。 「ここから実行」関数ブロックに実行したい処理をつなげていきます。

関数ブロックを削除してしまった

もし「ここから実行」関数ブロックを誤って削除してしまった場合、ツールボックスの「関数」から新しい関数ブロックを作成し、名前を「ここから実行」に設定してください。

名前の変更

「ここから実行」関数ブロックの名前を変更することはできません。

329755515-70543e69-bb4c-490c-92e2-dd3ceed6fd4f

イベントファイルの追加

イベントファイルでは各イベント(キーボードやマウスに関連する)を受け取ったときに処理を実行することができます。 マクロのタブ横にある+ボタンから追加したいイベントファイルを選択することができます。

329756508-3a6399c9-7bdb-4c3c-92e1-98752fd89191

割り当て

ブロックマクロを作成すると、マクロの割り当て時、マクロの選択画面に作成したブロックマクロが表示されます。

割り当てから値を受け取る

各割り当てから、数値、文字列、真理値、キー、などの値を受け取る機能を「引数」と呼びます。 引数を設定するとマクロを割り当てる際、マクロの選択画面に各引数の値入力欄が表示されます。

329774943-77bb18a6-29d0-43fe-9350-ec2ea117d8d4

設定された値は実行時、引数と同じ名前の変数ブロックで受け取る事ができます。

329774960-7ec19e33-153b-4fe8-a8ce-5c8897d85e81

「ここから実行」関数ブロック左の歯車アイコンから引数の設定が可能です。

329774984-d985df11-c62b-44f0-af17-85ddcc0722dc

マクロの設定から引数の詳細設定を行うこともできます。

329775128-bafaf9b0-132a-4f5d-b2c4-4c7fe33556a2

デバッグ

実行の記録と再生

実行の記録と再生はブロックがどの順番で実行されたのかを確認することができます。 この機能はデフォルトで有効になっていません。有効にするには以下の手順に行います。

  1. マクロの設定から「デバッグ」タブを選択し、「マクロの実行を記録」を有効にします。
  2. マクロを実行します。
  3. ドロップダウンメニューの「デバッグ」から「マクロの実行記録を再生する」をクリックします。

コードを確認する

ドロップダウンメニューの「コード確認」から生成される javascript を確認できます。

コードを再生成する

ドロップダウンメニューの「デバッグ」から「ブロックからコードを再生成」をクリックすることでマクロのすべてのファイルのコードを再生成できます。