Keyboard Maestroを買ってみたはいいものの,よくわからず持て余している……
機能が多すぎて何をしたらいいかわからない……
そんな方は多いのではないでしょうか。
Web上にあるKeyboard Maestro活用例を見てみると,達人が何かすごいことをしているという印象で圧倒されます。もう少し単純で時短になるものがほしいですね。
そこで今回は,Keyboard Maestroに「単語登録」し,文字入力を速くする方法を紹介します。
単語登録って何?
一般的に単語登録とは,日本語入力機能に自分のよく使う単語や文章を登録して入力を速くすることを指します。「おせ」と入力してスペースキーを押し,「お世話になっております」に変換するようなことは誰もがやっているでしょう。
Keyboard Maestroでは単語登録そのものはできませんが,Typed String Triggerという仕組みを使い,文字を打ち込んだ瞬間に発動する自動処理を作ることができます。例えば「ari」と入力すると「ありがとうございます」に変換するマクロなどです。
このような自動化手法をText Expansionと呼び,代表的なアプリはText Expanderです。また,そういう定型文入力を補助するアプリのことをスニペットツールと言います。
あまり専門用語がたくさんあると疲れるでしょうから,なじみのある「単語登録」という用語を使いますね。
準備
今回作るのは下記のような流れのマクロです。
- 欧文入力モードで単語を入力して
- スペースを打つと
- 登録した単語に変換される
0からマクロ作成するのは作業するほうも説明するほうも大変なので,マクロのサンプルを作りました。サンプルを複製し,文字を打ち変えるだけで実用に足るマクロが完成します。
こちらのファイルをダウンロードし,ダブルクリックするなどして開いてください。Keyboard Maestroが起動し「Text Expansion」というマクログループがインストールされます。
Text_Expansion.kmmacros
それでは中身を見てみましょう。
「ill」と入力して「Illustrator」に変換するマクロ
グループ「Text Expansion」内に「type」というマクロがあるので選択してください。
こちらは「Insert text by typing」を使うサンプルです。
Insert text by typingはキーボード打鍵をシミュレートして文字入力するアクションで,ミスなく確実に入力してくれます。ちょっと動きが遅く,しかも欧文しか使えないという特徴があります。「Photoshop」や「InDesign」など,短めの英単語に最適です。
This string is typed : のところが発動条件です。文字入力しているとき,入力した文字がテキストフィールド部分の正規表現に当てはまった瞬間にマクロが実行されます。正規表現とは超強力な文字検索機能のことです。
テキストフィールドの中身は,\b,入力単語,半角スペース の順に入っています。
\bは「単語境界」を示します。簡単に言えば「ill」という文字だけに反応させ,willやfill・billなど,つながった単語のときには動かないようにする指定です。ここは他の単語にしたいときも変更しません。
「入力単語」は反応させる単語です。今回はillですね。他の単語にしたいときはここを変えます。
半角スペースは,スペースを押すと変換される日本語入力風の動作を再現するためにつけています。ここは他の単語にしたいときも変更しません。
テキストフィールドの下にあるSimulate matching deletes before executingは,マクロ実行の前に入力した単語を消すかどうかを表します。チェックを入れます。
その下のInsert text by typingの部分が「登録単語」です。今回はIllustratorですね。他の単語にしたいときはここを変えます。
「yoro」と入力して「よろしくお願いいたします。」に変換するマクロ
グループ「Text Expansion」内に「paste」というマクロがあるので選択してください。
こちらはInsert text by pastingを使うサンプルです。
Insert text by pastingは,クリップボードにコピーしたテキストを貼りつけることで文字入力するアクションです。動作が機敏で,日本語も長文も問題なく対応できます。基本的に短い英単語以外はこちらの形式を使うと良いでしょう。
しかし文字のコピーが済む前にペーストしてしまうなど,タイミングが早すぎて失敗することがよくあります。
そこで Pause for 0.2 seconds. の部分で0.2秒待つ処理を加え,成功率を上げています。貼り付ける文章が長いときは,それに応じて待機する秒数も伸ばしてください。
またクリップボードを使うので,当然コピーしたテキストはクリップボードに残ってしまいます。それが不都合な場合は Delete Past Clipboard 0 を入れてください。今したコピーを削除して,もともとクリップボードに入っていたものを復活させる動作になります。
終わりに
いかがでしたでしょうか。難しい仕組みに見えますが,完全に理解する必要はありません。ただサンプルを真似して「入力単語」と「登録単語」を変えていくだけで,どんどん作業が速くなります。自分に合わせて新たな単語を登録してみてください。
これでまた少し仕事が速くなりました。今日もさっさと仕事を切り上げて好きなことをしましょう!