macOSのQuick Look(スペースキーで表示されるプレビュー機能)で、CSSファイルだけプレビューできない現象に遭遇した。
Apple側の不具合なのか、自分の環境固有の問題なのかは断定できていない。ただ、切り分けを進めた結果、少し気になる挙動が見つかったので記録として共有します。
良ければいいねして頂けると、大 感 謝 ! (_人_)
環境
macOS 26.5.1
Build 25F80
症状
FinderでCSSファイルを選択してスペースキーを押しても、Quick Lookの内容が表示されない。
例えば以下のような単純なCSSファイルでも再現した。
body {
color: red;
}
また、ターミナルから以下を実行しても同様だった。
qlmanage -p local.css
最初に疑ったこと
ダウンロードしたCSSファイルだったため、最初はGatekeeperやquarantine属性を疑った。
しかし、新規作成したローカルファイルでも再現した。
echo 'body{color:red}' > local.css
属性を確認しても特に不審なものは見当たらない。
xattr -l local.css
出力例↓
com.apple.macl:
com.apple.provenance:
Content Typeは正常
Spotlightメタデータを確認すると、CSSとして正しく認識されていた。
mdls -name kMDItemContentTypeTree local.css
結果↓
kMDItemContentTypeTree = (
"public.css",
"public.text",
"public.data",
"public.item",
"public.content"
)
少なくとも「CSSとして認識されていない」わけではなさそうだった。
JSONやJavaScriptは表示できる
比較のため、他のテキスト系ファイルも試した。
echo '{}' > local.json
echo 'console.log("hello")' > local.js
echo 'hello' > local.txt
これらはQuick Lookで正常に表示された。
少なくとも自分の環境では、
- JSON
- JavaScript
- TXT
- HTML
は問題なし。
症状はCSSだけだった。
public.plain-textを強制すると表示できる
さらに試してみると、Content Typeを強制した場合は表示された。
qlmanage -c public.plain-text -p local.css
するとCSSの内容が普通に表示される。
つまり、
- ファイル内容は読める
- Quick Look自体は動いている
- CSSファイルだけ通常ルートで表示されない
という状態だった。
LaunchServicesの登録も存在する
UTI定義を確認すると、public.css自体は存在していた。
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister \
-dump | grep -A 10 "public.css"
一部抜粋。
type id: public.css
bundle: CoreTypes
flags: active
そのため、少なくともpublic.cssの定義が消えているわけでもなさそうだった。
現時点での推測
ここまでの結果から、自分は以下のどれかではないかと考えている。
- macOS 26.5.1のQuick Look関連不具合
- 特定環境でのみ発生する設定・キャッシュ破損
- public.cssに対するプレビュー処理の問題
ただし、自分だけの環境で起きている可能性も否定できない。
同じ症状の確認方法
もし気になったら、以下だけ試せば確認できる。
echo 'body{color:red}' > ~/Desktop/test.css
mdls -name kMDItemContentTypeTree ~/Desktop/test.css
qlmanage -p ~/Desktop/test.css
さらに比較用として。
echo '{}' > ~/Desktop/test.json
qlmanage -p ~/Desktop/test.json
もし
- JSONは表示される
- CSSだけ表示されない
という結果なら、同じ現象かもしれない。
追記
その後、以下も確認した。
-
public.cssのUTI定義は存在する -
public.cssは LaunchServices に登録されている -
public.plain-textを強制すると表示できる -
public.jsonやcom.netscape.javascript-sourceは正常に表示できる - 新規作成したローカルCSSファイルでも再現する
現時点では原因を断定できていないが、Apple Feedback Assistantへ報告を提出してみた。
同じ症状が再現する方がいたら、OSバージョンや検証結果をぜひ教えてください。