フォルダアクションが Finder から消えた件: hkob の雑記録 (4)

はじめに

hkob の雑記録の第4回目は最近使い始めた macOS ユーザにはほとんど知られていないと思われるフォルダアクションについて記録しておきます。実は1年ほど前にこんなポストをしていました。

昨年の Sonoma まではポストに掲載したように Finder に「フォルダアクション設定」というメニューがありました。

フォルダアクション設定 (macOS Sonoma)

今日、確認したところ Sequoia の Finder にはクイックアクションのメニューだけになっていました。

私の使用例

ポストにもあるようにボタンアコーディオンの音取りのために、MuseScore というアプリを使っています。アイリッシュ音楽では全ての曲を頭で覚える必要があるのですが、音取りと記憶のためだけに楽譜を使っています。忘れた時のために Notion に PDF を貼り付けています。

MuseScore

ファイルの保存は ~/Documents/MuseScore4/Scores に保存していますが、PDF ファイル自体は Dropbox においており、ここの PDFScores からシンボリックリンクを貼っています。

MuseScore4 フォルダ

ここで MuseScore 自体のファイル形式である mscz の保存と PDF の Export は同じファイルメニューから実行できます。ただ、この時フォルダを切り替えるのが面倒でした。

MuseScore の File メニュー

また、もう一つの問題は Export された PDF のサイズです。用紙サイズが A4 になってしまうので、Notion に貼り付けた時に周囲に余白ができてしまって邪魔でした。そこで、保存すると同時に PDF のクリッピングをした上で、PDFScores の方に保存する仕組みを取り入れました。

フォルダアクションの設定

フォルダアクションは macOS 8.5 の時に登場した機能です。フォルダにファイルが作成されたときに、AppleScript などを実行できる機能でした。現在の macOS では Automator でのみフォルダアクションを設定できます。Automator の後継とされているショートカットではサービスなどのクイックアクションは作成できるものの、フォルダアクションは設定できないようです。Finder からも設定できる GUI が消えているので、Automator とともにいつか機能としてなくなる可能性もあるかもしれません。

Automator を起動するとこのように Folder Action を設定することができます。

新規 Folder Action

私が先ほどの MuseScore ファイルの保存先である Scores に設定した Folder Action は以下のようになっています。

pdfcropForScore

フォルダにファイルが保存されると、このスクリプトが自動的に実行されるようになっています。渡されたファイルの拡張子が pdf だった場合には、pdfcrop でクリッピングを実施し、そのファイルを Dropbox の下に移動します。なお、保存した A4 版の PDF は必要ないので消すようにしています。この結果、MuseScore ではファイルの保存場所をいちいち切り替える必要がなくなり、快適になりました。

IFS=$'\n'
PATH=/Library/Tex/texbin:/opt/homebrew/bin:$PATH

TARGET_DIR=/Users/hkob/Dropbox/Scores/
for f in "$@"
do
  echo $f
    if [ "xpdf" = "x${f##*.}" ]; then
    pdfcrop $f
    filename_without_ext=${f%.*}
    mv ${filename_without_ext}-crop.pdf $TARGET_DIR
    rm $f
  fi
done

おわりに

いつフォルダアクションが使えなくなるのか分かりませんが、使えるまでは便利に使っていこうと思います。

hkob.notion.site