AppleScript入門 > 簡易キーボードマクロ for Mac OS X
Photo by Doña Tecla via Flickr
Javascript / AppleScriptで作成した、簡易キーボードマクロというか、人間の替わりにキー入力を再現するプログラムです。
ちょいとMacで仕事をすることになり、こういうのが必要になったんだけど、手ごろなが見つからなかったので作ってみました。
AppleScriptのスクリプトエディタでは、Javascriptも動くので、それを利用しています。
決して、多機能ではありません。
もっと良い方法があれば、ぜひ教えてください。> @ycatch
ブラウザの選択中のフォームに、指定した複数行のテキストを自動的に入力します。
キー入力の様子を動画キャプチャするために作成したので、1文字ずつ入力していくようになっています。
対象アプリを切り替えるには、browser変数に代入する値を下記に変更してください。
var browser = "Google Chrome"; // Set your browser "Safari"
下記から、スクリプトエディタへコピペで貼り付けしてください。
var code_lines = [ '/* hello world */', '/* |sekainominasann,konnnitiha_^| */', 'print("hello world")']
スクリプトコードを実行すると、次のように入力されます。
/* hello world */ /* 世界の皆さん、こんにちは */ print("hello world")
変換より、キーボードマクロの動作が早すぎる場合は、「_=^=」とウエイトを入れてください。
次の文字を含めておくと、各キーの入力を再現します。
Rubyのブロック変数指定で「|」を使用する場合は、コード中で別の記号(\)に置き換えてください。
入力する文字によって、通常のキーボード入力と異なる動作をする場合があります。 そんな場合は、そのキーをキーコードで入力するように、コードを修正してみてください。
また、不足しているキーがあるとか、機種によってキーコードが違うとか、なんてことがあれば、いい感じに改良してください。
下記に秒単位で設定します。
var key_delay = 0.08;
下記のdelayの数値を直接修正します。
delay(0.5); // 改行前 if (j < len -1) { sys.keyCode(76); // Enterキー delay(0.8); // 改行後 }