コンテンツへスキップ

Hammerspoonご存知ですか?


Hammerspoonとは、macOSで動くミドルウエアの役割を担うソフトウエアです。ご存知ない方にはイメージしにくいと思いますが、ミドルウエアの名前のように、macOSとさまざまなアプリケーションとの間で仲立ちを行なってくれます。

例えば、下記のようなことができます。

  • スクリーンショットを撮ってから、ファイルを保存しつつクリップボードにも送る
  • キーボードショートカットを自由に指定して、一連の操作を自動化する
  • アプリケーションのリストを作成して、選択することで起動などの処理を実行する

これらはほんの一部の機能で、私もまだまだ使いこなすまでは至っていませんが、以前使っていたAlfredというMacでは有名なユーティリティでやっていたタスクは全て置き換えることができました。ただ、完全に全ての機能を網羅しているわけではありません。逆にAlfredではできないことが、Hammerspoonでは可能、というケースもあります。

Hammerspoonは、アプリケーションの体裁になっています。ログイン時に自動起動させておくと、デーモンソフトウエアのようにバックグラウンドで地味に動いてくれて、ユーザーが指定したトリガーによって着実に仕事をしてくれます。動作に関しては非常に安定していて、長期間の使用でも安心できると私は判断しています。

こんな非常に強力なツールではありますが、導入にはそれなりのスキルは必要になります。Hammerspoonで実行したいタスクなど全ての設定は、スクリプト言語Luaで記述する必要があるからです。Lua?それ美味しいの?なんて思いますよね😄。非常に地味な?プログラミング言語です。

Luaとは、ポルトガル語で月を表す単語だそうです。そのロゴを見るとイメージできるのですが、地球と月の関係のような動作をします。月は地球の周りを回る衛星で、もし地球が無ければ存在できないでしょう。Luaはホストになる言語環境に寄り添う形で動作するプログラミング言語です。C言語との連携を想定して開発が始まったそうですが、今ではいろんな環境と共に使われているようです。Hammerspoonは、macOSという地球に対して、月のように寄り添うように動作します。

私が設定したHammerspoonでは、このスクリーンショットのようにアプリケーションのランチャや、Google検索、辞書検索などをキーボードショートカット一発で起動するようにしています。非常に心地よく軽快に動いてくれます。思ったことを瞬時に実行したいような、せっかちな人には便利なツールだと思います。ちなみに、DaVinci Resolveが提供しているるスクリプティング環境でもLuaがサポートされています。ここでもDaVinci Resolveという地球に対して寄り添う形でLuaが活躍しています。

プログラミング言語、それも使ったことがなかったLuaなんて面倒だなあ。とお考えなら、今流行りのChatGPTに助けてもらうと楽ちんです。私はそうやって、パートごとにGPTに質問して、回答されるちゃんと動作するLuaコードをそのまま貼り付けて使っています😄

「Hammerspoonご存知ですか?」への2件のフィードバック

  1. CommandPostはお使いにならないのですか?
    こっちは映像系に特化していて便利そうですが

  2. 初めて知りました。情報ありがとうございます。
    FCP向けに作られたようですが、今はその対応は多方面ですね。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください