如何使用默认 shell 查找 OSX 上的所有可用字体

sti*_*tib 1 macos bash fonts applescript extendscript

我正在尝试使用extendscript(一种专有的ECMAScript方言,但主要是\xe2\x89\x88 javascript)为Adobe After Effects编写脚本。我可以使用内置命令 system.callSystem()来使用默认(?) shell 执行命令,但我找不到 bash oneliner,或者我可以用来列出可用字体的 AppleScript 命令。

\n\n

有没有办法在 OSX 命令行上获取所有字体?

\n

Ted*_*ley 5

在 AppleScript 中,您可以使用此 ASOC 代码来获取系统可用的所有字体或字体系列的名称:

use framework "AppKit"
set fontFamilyNames to (current application's NSFontManager's sharedFontManager's availableFontFamilies) as list
set fontNames to (current application's NSFontManager's sharedFontManager's availableFonts) as list
Run Code Online (Sandbox Code Playgroud)

我不确定您想要哪一个,所以我包含了两者的代码。如果您想从 bash 访问此脚本,请使用以下osascript命令:

fontFamilyNames=$(osascript << SCPT
    use framework "AppKit"
    set fontFamilyNames to (current application's NSFontManager's sharedFontManager's availableFontFamilies) as list
    return fontFamilyNames
SCPT)
Run Code Online (Sandbox Code Playgroud)