しくみ
2 つのプログラム
Input.Observer は、連携して動作する 2 つのプログラムで構成されています。
- エンジン は、タスク バーの通知領域にアイコンを置いてバックグラウンドで実行されます。マウスとキーボードを監視し、ジェスチャの軌跡とヒントを描き、ジェスチャ、ホットキー、入力されたコードを認識して、アクションを実行します。診断コンソールもエンジンにあります。エンジンは単独で動作し、ほかに何も実行されている必要はありません。
- 構成ウィンドウ は、エンジンの動作を変更する場所です。トレイ アイコンから開き、いつでも閉じられる別のプログラムです。閉じてもエンジンは何も変わりません。構成ウィンドウはエンジンの実行中にだけ動作します。単独で起動すると、Input.Observer が実行されていないことを示して閉じます。エンジンが終了すると、構成ウィンドウも閉じます。
プラグイン は、エンジンが起動と停止を行う、さらに別のプログラムです。付属の Styles プラグインは、軌跡、ヒント、メッセージにスタイルを選んだときに、アニメーションする軌跡、テーマ付きのヒントとメッセージを描き、サウンドを再生します。プラグインを参照してください。
エンジンがマウスを監視するのは、設定した何かがそれを必要とするときだけです。つまり、少なくとも 1 つの描画ボタン、グローバルなマウスまたはホイールのイベント、またはテキスト展開がある場合です。トレイからエンジンを一時停止している間は、マウスもキーボードも監視しません。
設定の保存場所
- 構成ファイル。 設定したもの (ジェスチャ、アクション、アプリ グループ、設定) はすべて、移動ユーザーのアプリケーション データの
Input.Observerフォルダー (%APPDATA%\Input.Observer) にある 1 つのファイルconfig.tomlに入っています。エンジンのプログラム ファイルと同じフォルダーにconfig.tomlがある場合は、代わりにそちらが使われます。これにより、持ち運ぶフォルダーから Input.Observer を実行できます。トレイ メニューの 構成フォルダーを開く で、使用中のフォルダーが開きます。 - ファイルを書き込むもの。 エンジンは起動時にファイルを読み込みます。構成ウィンドウはエンジンから設定を受け取り、適用したときに変更をエンジンに返します。エンジンはファイルを書き込み、すぐに変更を使い始めます。ファイルを手作業で編集した場合は、トレイ メニューの 構成の再読み込み を選ぶと編集内容が使われます。
- 同じ場所 には、ライセンス、コンソールの設定、アクティブなプロファイル、マクロの記録、およびファイルの以前のバージョンを最大 10 個保持する Backup フォルダーがあります。
- 構成ウィンドウ自体の設定 (サイズと位置、シンプル モードか詳細モードか、最後に開いていたページ、サンドボックスのレイアウト) は、このコンピューター専用として
%LOCALAPPDATA%\Input.Observerに保存されます。テーマと言語はエンジンも使うため、構成ファイルに入っています。
構成ファイルはパスワードで保護できます。構成ファイルとセキュリティを参照してください。
ボタンを押してからアクションが実行されるまで
既定の設定でジェスチャを描いたときに起こることは次のとおりです。
-
マウスの右ボタンを押します。 エンジンは何よりも先に即座に、この押下がジェスチャになり得るかどうかを判断します。次の場合はジェスチャにならず、押下は遅延なくそのままプログラムに届きます。
- 無視する修飾キー (既定は Ctrl) が押されている。
- ポインターが除外ゾーンの中にある。
- ポインターの下のウィンドウが無視グループに属している。
- そのウィンドウのアプリ グループにも グローバル にも、そこで使えるジェスチャがない。
対象になるのは、ポインターの下にあるトップレベル ウィンドウです。まず無視グループが確認され、次にアプリ グループが一覧の順序で確認されます。どのグループにも属さないウィンドウは グローバル に属します。スコープとフォールバックのルールを参照してください。
-
描いている間、押下は保留されます。 ポインターが 5 ピクセル動くと、押下はジェスチャになり、軌跡が表示されます。それより前にボタンを離すと、プログラムは通常のクリックを受け取ります。ポインターが 0.5 秒動かないと、ジェスチャは取り消され、プログラムが押下を受け取ります。ジェスチャは最長 10 秒です。描いている間に押したキーやほかのマウス ボタンは、プログラムではなくジェスチャに渡ります。ジェスチャの描画を参照してください。
-
描いている間にストロークが比較されます。 ストロークは、ウィンドウのアプリ グループと グローバル が使うジェスチャに対して採点されます。ヒントには、ここまでで一致しているものが表示されます。ストロークの照合方法を参照してください。
-
ボタンを離すと、アクションが選ばれます。 最も高い得点のジェスチャは、その得点が一致のしきい値 (既定値 75) に達した場合にだけ有効です。アプリ グループのアクションのうち、トリガー (ジェスチャ、描画ボタン、押している修飾キー、領域、プロファイル) が合う一覧の最初のアクションが選ばれます。アプリ グループに該当するものがなければ、グループの グローバルにフォールバック がオフでない限り、グローバル のアクションが試されます。
-
アクションが実行されます。 描き始めたときに下にあったウィンドウが前面に出て、その後、前に実行するよう設定されたアクション、アクション自体、後に実行するよう設定されたアクションの順に実行されます。前と後のアクションを参照してください。
何も一致しなければ、何も実行されず、押下もプログラムには届きません。その場合にアクションを実行するには、一致なし グローバル イベントを使えます。グローバル イベントを参照してください。
ホットキーとテキスト展開 も同じアプリ グループのルールに従いますが、対象になるのはポインターの下のウィンドウではなく、前面にあるウィンドウです。ホットキーとテキスト展開を参照してください。
シンプル モードと詳細モード
構成ウィンドウには 2 つのモードがあります。シンプル は、ほとんどの人に必要なものを表示します。詳細 は、修飾キーのタイミング、領域、プロファイル、ステップの背後にあるコード、グローバル イベント、除外ゾーン、プラグイン、コンソールなど、より細かく制御するためのページと設定を追加します。モードで変わるのは、ウィンドウに表示されるものだけです。どの設定もどちらのモードでも同じように機能し、詳細モードで変更した設定はシンプル モードでも引き続き有効です。構成ウィンドウを参照してください。