日別アーカイブ: 2026/02/23

Finder の名前順ソート再現 (JXA)

本日も朝からドン曇り、でも天気予報は昼には晴れると。
嘘つき!ドン曇りのまま、野鳥もサッパリで散々だ。
正午過ぎに少し晴れてきたけどもうヤル気ない、ボウズです。

ということで久々にプログラミングネタ。
macOS で Finder と同じ名前順でファイル名をソート。

「自然順ソート」あれこれ | 電書魂

こんなの見つけた、localizedStandardCompare を使うのね。

localizedStandardCompare: | Apple Developer Documentation

AppleScript は面倒だし PyObjC は変換作業と初期化に問題が。
Objective-c はコンパイルが、Swift は SUZUKI しか知らない。
ということで JXA の出番です。

#!/usr/bin/osascript -l Javascript

let strings = ['2.jpg', '10.jpg', '1024.jpg', '44.jpg', '321.jpg'];

strings.sort((a, b)=> {
    return $(a).localizedStandardCompare($(b));
});

for (let s of strings) {
    console.log(s);
}

jxa

これだけか、なんだ簡単だった。
コレさえ解れば macOS に mpv を入れても自前拡張できる。

Fedora Tips | MPV をスクリプトで拡張 – Paepoi

と思ったけど調べると Homebrew 必須かよ、IINA でいいや。
mpv ベースみたいだから同じ拡張が使えるはず。

IINA – The modern media player for macOS

1.4.1 を落としてみた、Tahoe 26.3 で動くじゃん。
早速 macOS 向けスクリプトを作って、と思ったけど。

iina

ディレクトリ内の次を再生する機能はデフォルトであったわ。
意味なかった、まあ macOS プログラミングの勉強にはなった。