Keyboard Maestroを使うと実現できること

2017年にIllustratorユーザーがKeyboard Maestroを使うべき理由(macOS) という記事を書きました。

今回は、macOS全般でKeyboard Maestroができることについてまとめてみました。

目次

  • キーボードショートカットを設定できないアプリケーションでのキーボードショートカット設定
    • キーボードショートカットを無効化する
  • 開く/起動する
    • 指定ファイルを開く
    • 指定フォルダーを開く
    • アプリの起動
    • アプリの起動(2)
    • アプリの起動(Finder) + 指定フォルダーを開く
    • 選択しているファイルを特定のアプリで開く
  • ブラウザー
    • 指定URLを開く
    • 現在開いているURLを、別のブラウザーで開く
    • 整形(URL内のパラメーターの削除)
    • ページタイトルとURLをコピー(1)
    • ページタイトルとURLをコピー(2)HTML
    • ページタイトルとURLをコピー(3)Markdown
  • クリック操作
    • 右クリック
    • ダブルクリック
    • トリプルクリック
  • 文字入力
    • よく使う文字を入力する
    • 英数モードでの全角入力
    • スニペット
    • 括弧を入力する(1)
    • 括弧を入力する(2)選択文字列をはさむ
    • 括弧を入力する(3)
    • タイムスタンプ(1)
    • タイムスタンプ(2)
  • 整形(クリーニング)
    • 改行を削除する
    • 力技での検索置換
    • Filter
    • Emacsキーバインド
    • Emacsキーバインドの補強(1)
    • Emacsキーバインドの補強(2)カーソルの左側を削除
    • 改行コードを除いて選択
  • ウィンドウのリサイズ
  • OCR
  • Keyboard Maestroでは“できない”こと

目指すところ

  • マウス操作やキーボード操作を少なくする
  • アプリケーション間での操作感の統一化
  • 「手続き」(一連の操作の流れ)のパッケージ化
  • ホームポジションを崩さないように実行できるように
  • マウス利用時には、キーボードショートカットをキーボードの左側に寄せる

キーボードショートカットを設定できないアプリケーションでのキーボードショートカット設定

キーボードショートカットをカスタマイズできないアプリケーションで、キーボードショートカットを設定します。

  • Adobe XD
  • Acrobat DC

Keyboard Maestro自身もキーボードショートカットの編集機能がありませんので、Keyboard Maestroにて設定します。

上記のマクロでは、マクロとアクションの有効/無効をcontrol + /(⌘ + /)でトグルします。

余談ですが、次の理由から複数のhot key(キーボードショートカット)を設定しておくとよいのも吉。

  • どっちでもいけるように
  • ちょっとしたオペミスも吸収できるように

キーボードショートカットを無効化する

「このアプリで、このキーボードショートカットを使いたくない」というケースがあります。

この場合には、「Cancel This Macro」アクションを割り当てます。

開く/起動する

ファイルやフォルダー、アプリケーションを開く操作をマクロとして設定し、キーボードショートカットで実行します。

  • 指定ファイルを開く
  • 指定フォルダーを開く
  • アプリの起動
  • 選択しているファイルを特定のアプリで開く

指定ファイルを開く

キーボードショートカット(hot key)を使って、指定したファイルを開きます。

その際、[with]の項目で「Default Application」を指定しておけば、ファイルの拡張子の関連付けが優先されます。

Adobe CCなど、バージョンアップによってアプリ名が変わるとマクロが実行できないことがあります。マクロが増えても変更する手間を省けます。

私(鷹野)は、「control + shift + ⌘ + アルファベット」を指定しています。

指定フォルダーを開く

キーボードショートカット(hot key)を使って、指定したフォルダーを開きます。

特に「ライブラリ」フォルダーはデフォルトでは開くのが面倒ですので、キーボードショートカットで開けるようにすると便利です。

私(鷹野)は、「control + shift + アルファベット」を指定しています。

アプリの起動

キーボードショートカット(hot key)を使って、指定したアプリケーションを起動します。

私(鷹野)は、「control + option + アルファベット」を指定しています。

アプリの起動(2)

「InDesignを起動したら、FILL Id.appを追いかけて開く」という場合には、マクロ内に仕込んでおくと、ひと手間省けます。

この際、必要に応じてPauseアクションをはさむことで、時間差を設定できます。

アプリの起動(Finder) + 指定フォルダーを開く

Finderを開く際、Dropbox直下など、よく使うディレクトリを開くように設定しておくと重宝します。

ただし、この場合、常に指定したフォルダーが開いてしまいます。現在、開いているウインドウのままでFinderに切り替えたいので、次のようにした方が実用的です。

私(鷹野)は、「control + Rキー」を指定しています。

選択しているファイルを特定のアプリで開く

キーボードショートカット(hot key)を使って、Finderで選択しているファイルを指定したアプリケーションで開きます。

たとえば、普段はプレビュー.appでPDFで開き、特定のケースのみAcrobatで開く、といった具合に使い分けます。Photoshopのドロップレット(アクションをアプリケーション化したもの)を指定することもできます。

私(鷹野)は、「control + option + ⌘ + アルファベット」を指定しています。

ブラウザー

指定URLを開く

キーボードショートカット(hot key)を使って、指定したURLをブラウザーで開きます。

Groupの対象をきちんと設定していても、「Default Application」にしておくと、macOSの[デフォルトのWebブラウザ]が優先されます。複数のブラウザーを使い分けている方は注意しましょう。

現在開いているURLを、別のブラウザーで開く

現在開いているURLを、キーボードショートカットで別のブラウザーで開き直します。

  1. ⌘ + Lキーでアドレスバーをハイライト
  2. コピー
  3. Safariを起動する
  4. 起動するまで待つ
  5. ⌘ + Tキーで新規タブを開く
  6. ⌘ + Lキーでアドレスバーをハイライト
  7. ペースト
  8. returnキーで開く

私(鷹野)は、「⌘ + option + shift + アルファベット」を指定しています。

  • S:Safari
  • G:Google Chrome
  • F:Firefox

整形(URL内のパラメーターの削除)

ソーシャル経由で開いたときに付加される文字列(「?utm」など)をキーボードショートカットで削除します。

  1. ⌘ + Lキーでアドレスバーをハイライト
  2. コピー
  3. 「?fbclid」以下の文字列を削除
  4. 「?utm」以下の文字列を削除
  5. ペースト
  6. returnキーで開く

YouTubeのURLでは「?」以下を削除できませんので、次のようにif文を使って処理するのがスマートです。

私(鷹野)は、「control + Lキー」を指定しています。

ページタイトルとURLをコピー(1)

次のような操作によって、キーボードショートカットでブラウザーで開いているサイトのタイトルとURLをコピーします。

なお、これを実行するには、[表示]メニューの[開発 / 管理]→[Apple Events からの JavaScript を許可]をオンにする必要があります。

私(鷹野)は、「control + Tキー」を指定しています。

ページタイトルとURLをコピー(2)HTML

次のように記述すれば、HTMLのコードになります。

私(鷹野)は、「control + Hキー」(H: HTML)を指定しています。

ページタイトルとURLをコピー(3)Markdown

次のように記述すれば、Markdownのコードになります。

私(鷹野)は、「control + Mキー」(M: Markdown)を指定しています。

クリック操作

右クリック

キーボードショートカット(hot key)を使って、マウスを操作せずに、右クリックを実行します。

私(鷹野)は、「control + `キー」を指定しています。

正確には、「controlキーを押しながら、左ボタンをクリック」と指定しています。「right buttonをクリック」と指定もできますが、その場合、システム環境設定で右クリックが設定されている必要があります。

ダブルクリック

キーボードショートカット(hot key)を使って、マウスを操作せずに、ダブルクリックを実行します。

私(鷹野)は、「option + `キー」を指定しています。

トリプルクリック

キーボードショートカット(hot key)を使って、マウスを操作せずに、トリプルクリックを実行します。さらに、コピー操作を加えます。

私(鷹野)は、「control + option + `キー」を指定しています。

文字入力

よく使う文字を入力する

キーボードショートカット(hot key)を使って、「←↑→↓」など、入力しにくいがよく使う文字を入力します。

私(鷹野)は、「control + option + shift + J/I/K/Lキー」を指定しています。

英数モードでの全角入力

日本語入力モードのときには、 shift + スペースバーで半角スペースを入力できます。 逆の場合、つまり「英数入力時に、全角スペースを入力」できるように設定します。

「Insert Text by Pasting」を使って文字を入力すると、クリップボード履歴に残ります。そこで「Delete Past Clipboard」アクションを使ってクリーニングします。

「Delete Past Clipboard」アクションを挿入すると、デフォルトでは「1」が入りますので、「0」に変更します。

スニペット

「snnn」とタイプしたら、「鷹野 雅弘」が入力されるように設定します。

同様によく使う文字列を設定しておくと、はかどります。

括弧を入力する(1)

キーボードショートカット(hot key)を使って、「起こしと閉じの括弧」を入力し、カッコ内にカーソルを移動します。

「Insert Text by Pasting」を使っていますので、「Delete Past Clipboard」アクションを挿入して、クリップボード履歴から入力した括弧を削除します。

私(鷹野)は、「option + shift + ;キー」を指定しています。

括弧を入力する(2)選択文字列をはさむ

キーボードショートカット(hot key)を使って、選択した文字を指定した「起こしと閉じの括弧」で囲みます。

私(鷹野)は、「option + shift + 'キー」を指定しています。

括弧を入力する(3)

私(鷹野)の場合、パーレン(丸括弧)以外にも、次の括弧類に対して設定しています。

  • カギ括弧(「」)
  • ブラケット([])
  • 二重カギ括弧(『』)
  • 引用符(“”)

タイムスタンプ(1)

キーボードショートカット(hot key)を使って、8桁のタイムスタンプを入力します。

「%ICUDateTime%yyyyMMdd%」によって、本日の日付を西暦と月日を8桁で参照します。また、「date」というクリップボードを利用することで、システムのクリップボードの履歴を汚さないようにしています。

私(鷹野)は、「control + ;キー」を指定しています。

タイムスタンプ(2)

「%ICUDateTime%YYYY年M月d日[EEE]%」と指定すれば、「2020年1月20日[月]」のように挿入されます。

整形(クリーニング)

改行を削除する

「Search and Replace」アクションを利用します。

チカラ技での検索置換

次の文字列置換は、正規表現を使って実行できません。

  • 全角アルファベットを半角に
  • 全角数字を半角に
  • 半角カタカナを全角に

そこで、これをチカラワザで実行するクエリーを作っています。

これをライブラリ的に再利用します。

Filter

「Remove Style」(書式の削除)や大文字・小文字変換などは、Filterとして用意されています。

Emacsキーバインド

macOSの多くのアプリケーションは、Emacsキーバインドと呼ばれるキーボードショートカットをサポートしています。

マウスや矢印キーを使わず、ホームポジションのままでカーソルや編集位置を移動したりすることができるため、文字入力/編集作業を行う際、覚えてしまうと非常に強力です。

キーバインド処理内容意味
control + B1 文字戻るbackward
control + F1 文字進むforward
control + A現在の行/段落の先頭に移動ahead
control + E現在の行/段落の末尾に移動end
control + Dカーソルの右側の文字を削除delete
control + Hカーソルの左側の文字を削除 
control + Kカーソルの右側の文字から行/段落の末尾までを削除kill
control + Lカーソル/選択部分を表示領域の中央にする 
control + P1 行上に移動previous
control + N1 行下に移動next view
control + Oカーソルの後ろに1行挿入 
control + Tカーソルの左側の文字と右側の文字を置換toggle
control + V1 つ下のページに移動するview next page

Emacsキーバインドの補強(1)

次のように補強します。

キーバインド結果
control + MReturn
control + VPageDown
control + ,Home
control + .End
control + UPageUp
control + GEscape

「このアプリケーションでは除外したい」ときには、マクログループを分け、[Available except in these applications]で除外したいアプリケーションを指定します。

Emacsキーバインドの補強(2)カーソルの左側を削除

control + Kキーによってカーソルの右側(から段落の末尾まで)をカットすることができます。これの逆バージョン、カーソルの左側をカットできるとラクです。

改行コードを除いて選択

多くのアプリケーションでは、トリプルクリックすると段落を選択できますが、段落末尾の改行コードが一緒に選択されてしまいます。

文字原稿からコピー&ペーストする場合に、次のようなマクロを用意しておくとはかどります。

  1. 段落末尾に移動
  2. 段落の先頭に移動しながら選択
  3. コピー
  4. 直前のアプリケーションに切り替え

入力モードの切り換え

入力モードの切り換えには、Karabiner-Elementsを使いますが、日本語モードに切り換えるには、右手が必要です。

左手だけで設定できるようにcontrol + Wキーを加えてみましょう。

ウィンドウのリサイズ

ウィンドウのコントロールを行う専用のユーティリティが数多く存在しています。

Keyboard Maestroで実装することで、次のような利便性を確保できます。

  • 専用のアプリケーションが不要になる
  • キーボードショートカットのカスタマイズなどをKeyboard Maestroに登録できる
  • アプリケーションによって微調整が可能
  • 前後の操作と絡めることができる

思い付く限りのことはできます。

OCR

Keyboard Maestroのみで、日本語のOCRが可能です。

ただし、Google Cloud Vision APIを使った方が精度が高いため、私はインターネット回線によって使い分けています。

なお、AcrobatのOCRは絶望的に精度が低いので忘れた方がよいです。

Keyboard Maestroでは“できない”こと

  • fnキーの制御(BetterTouchToolを使います)
  • カーソル関連
    • 大きいカーソルとの切り替え
    • マウスカーソルの表示・非表示

使いこなしのポイント

マクロを作って

[View]メニューの[Select]→[By Name…]をクリックすると、Spotlight的なウィンドウが開きます。

マクロ名はもちろん、ホットキーでの検索も可能です。

このマクロ検索機能をどのアプリからでも呼び出せるようにしておくと重宝します。

私(鷹野)は、「control + option + スペースバー」を指定しています。

ご参考