KeyboardMaestro
の履歴(No.9)
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
履歴一覧
差分
を表示
現在との差分
を表示
ソース
を表示
KeyboardMaestro
へ行く。
1 (2017-04-27 (木) 14:18:29)
2 (2017-04-27 (木) 14:19:26)
3 (2017-05-13 (土) 18:14:53)
4 (2017-06-12 (月) 13:56:29)
5 (2018-02-21 (水) 16:27:05)
6 (2018-04-02 (月) 14:47:16)
7 (2018-05-02 (水) 13:35:01)
8 (2018-09-05 (水) 23:52:29)
9 (2020-09-16 (水) 06:45:19)
10 (2022-04-12 (火) 00:27:57)
&tag(KeyboardMaestro);
目次
†
[
edit
]
目次
関連ページ
参考情報
ペースト
テキストペースト時にカーソルポジションを指定
マクロ
サブマクロを呼び出す
パラメータの受け渡し
サンプル1
Tips
TextExpander代わりに使用する
ChromeのURLやタイトルを取得する
Clipboardに文字列をコピーする
メニューを利用してマクロ実行
トラブルシューティング
マクロをデバッグする
↑
関連ページ
†
[
edit
]
↑
参考情報
†
[
edit
]
TextExpander から Keyboard Maestro へ移行した – with a Christian Wife
[Keyboard Maestro] “Insert Text by Pasting” 問題 – with a Christian Wife
↑
ペースト
†
[
edit
]
↑
テキストペースト時にカーソルポジションを指定
†
[
edit
]
"%|%"がカーソル位置に該当する。ただしMacroの戻り値として文字列を返し、そこに %|%が含まれているような場合、うまくいかない模様。
↑
マクロ
†
[
edit
]
↑
サブマクロを呼び出す
†
[
edit
]
action:Execute a Macro [Keyboard Maestro Wiki]
にあるように、Execute Macroアクションを使用する。
↑
パラメータの受け渡し
†
[
edit
]
呼び出し先がシェルスクリプトの場合、クリップボードや、KM変数、標準入力などを使って引数を渡すことができる。
クリップボードの場合、呼び出し先では普通にpbpasteで内容を読み込む。
KM変数の場合、呼び出し先で例えばTestParamに"あいうえお"をセットしておき、Macroをwith Parameterで「TestParam」を選んで引き渡す。複数の場合「TestParam1, TestParam2」とカンマ区切りでいける模様。
Can I create a "structure" type of variable? - Questions & Suggestions - Keyboard Maestro Discourse
呼び出し先のシェルスクリプトでは、$KMVAR_パラメータ名でアクセスできる。
echo $KMVAR_TestParam
ただしシェルスクリプトの場合、リードオンリーで、値を返すため書き換えてもだめ(AppleScriptだといけるようだが)。
標準入力を使う場合「With input from Text」を選ぶと、そこに記述した内容を1行づつ読み込むことができる。
How to Use Execute Shell Script -- With Input From - Questions & Suggestions - Keyboard Maestro Discourse
↑
サンプル1
†
[
edit
]
呼び出し側。
呼び出され側。
変数を使わない場合TriggerValueで参照できる。
結果
↑
Tips
†
[
edit
]
↑
TextExpander代わりに使用する
†
[
edit
]
トリガーとしてTypedStringを利用する。
Insert Text by Pastingで文字列を挿入する(Typeだと遅い)。
実行後クリップボードが汚れるのが嫌な場合、Delete Past Clipboard アクションをパラメータ0で実行する
↑
ChromeのURLやタイトルを取得する
†
[
edit
]
%ChromeURL%や、%ChromeTitle%で取得可能。Insert Text by Pastingを使用すればテキスト編集エリアなどにペーストできる。
↑
Clipboardに文字列をコピーする
†
[
edit
]
例えばスクリプトを実行するまえにClipboardに引数をコピーしたい場合がある。
"Set Clipboard to Text"アクションを利用すれば良い(名前から受ける印象とことなり、システムクリップボードにテキストをセットするアクション)。%ChromeURL%といったキーワードも利用可能。
↑
メニューを利用してマクロ実行
†
[
edit
]
トリガーでGlobal Macro Palette Triggerを選ぶと常に小さなアイコンが表示され、そこからマクロを実行することができる(Global Macro Palette Triggerを設定したマクロが一覧表示される)。
アクションでShow Palette of Macroを選ぶと、指定したグリープに含まれるマクロを表示し、それらをマウスで選択できる。パレット上のマクロは一文字ずつ文字をタイプすることで絞り込まれる。
Show Palette of Macroで表示できないグループがあったが不具合かどうかは不明。
macro paletteに関しては
Frequently Asked Questions [Keyboard Maestro Wiki]
も参考に。
↑
トラブルシューティング
†
[
edit
]
↑
マクロをデバッグする
†
[
edit
]
通知メッセージに表示されるがそれだけでは判別できない場合、Engine.logを確認する。
How to "see" complete error message in Notification Centre - macro failed - Questions & Suggestions - Keyboard Maestro Discourse
Help > Open Logs Folderでフォルダを開ける。以下でも可能。
open ~/Library/Logs/Keyboard\ Maestro
"[NSConcreteFileHandle writeData:]: Broken pipe"のようなメッセージが表示されている場合、スクリプトとの連携がうまくいっていないようなのでMacを再起動するとよいかも。