下载字体后,您可以看到它有很多元数据。例如,如果您下载Sansation字体并运行,mdls Sansation_Regular.ttf
您将获得此输出:
com_apple_ats_name_family = (
Sansation
)
com_apple_ats_name_fond = (
"Sansation Regular"
)
com_apple_ats_name_full = (
"Sansation Regular"
)
com_apple_ats_name_postscript = (
"Sansation Regular"
)
com_apple_ats_name_style = (
Regular
)
com_apple_ats_names = (
"Bernd Montag",
Regular,
Sansation,
"Sansation Regular",
"Version 1.31",
"\U00a9 2011 Bernd Montag"
)
kMDItemAuthors = (
"Bernd Montag"
)
kMDItemContentCreationDate = 2012-10-31 15:59:10 +0000
kMDItemContentModificationDate = 2012-10-31 15:59:10 +0000
kMDItemContentType = "public.truetype-ttf-font"
kMDItemContentTypeTree = (
"public.truetype-ttf-font",
"public.truetype-font",
"public.font",
"public.data",
"public.item"
)
kMDItemCopyright = "© 2011 Bernd Montag"
kMDItemDateAdded = 2013-11-21 16:21:51 +0000
kMDItemDisplayName = "Sansation_Regular.ttf"
kMDItemFonts = (
Regular,
Sansation,
"Sansation Regular"
)
kMDItemFSContentChangeDate = 2012-10-31 15:59:10 +0000
kMDItemFSCreationDate = 2012-10-31 15:59:10 +0000
kMDItemFSCreatorCode = ""
kMDItemFSFinderFlags = 0
kMDItemFSHasCustomIcon = 0
kMDItemFSInvisible = 0
kMDItemFSIsExtensionHidden = 0
kMDItemFSIsStationery = 0
kMDItemFSLabel = 0
kMDItemFSName = "Sansation_Regular.ttf"
kMDItemFSNodeCount = 78464
kMDItemFSOwnerGroupID = 20
kMDItemFSOwnerUserID = 501
kMDItemFSSize = 78464
kMDItemFSTypeCode = ""
kMDItemKind = "TrueType font"
kMDItemLogicalSize = 78464
kMDItemPhysicalSize = 81920
kMDItemVersion = "Version 1.31"
现在,如果您在git存储库中检查此文件,将其推送到远程服务器并克隆该存储库,则会在此过程中丢失大量元数据。克隆后,运行mdls Sansation_Regular.ttf
提供以下输出:
kMDItemFSContentChangeDate = 2013-11-21 16:31:26 +0000
kMDItemFSCreationDate = 2013-11-21 16:31:26 +0000
kMDItemFSCreatorCode = ""
kMDItemFSFinderFlags = 0
kMDItemFSHasCustomIcon = 0
kMDItemFSInvisible = 0
kMDItemFSIsExtensionHidden = 0
kMDItemFSIsStationery = 0
kMDItemFSLabel = 0
kMDItemFSName = "Sansation_Regular.ttf"
kMDItemFSNodeCount = 78464
kMDItemFSOwnerGroupID = 0
kMDItemFSOwnerUserID = 501
kMDItemFSSize = (null)
kMDItemFSTypeCode = ""
我试图跑,mdimport Sansation_Regular.ttf
但丢失的属性没有回来。
发生了什么?有没有办法要求系统重新创建所有缺少的元数据属性?
我正在运行OS X 10.8.5。
如果您压缩文件并通过解压缩在命令行上检查它,它似乎有一个资源分叉。我没有找到任何工具不再检查那件事。
—
卡尔斯滕2013年
我刚刚尝试了你概述的内容,将字体检入git存储库,然后克隆该存储库,所有Spotlight元数据在克隆的repo中都为我编制索引。所以看起来这可能是您的系统特有的东西。
—
Brian Webster 2013年
@Nicolas
—
2013年
mdimport -d 4 Sansation_Regular.ttf
不会打印任何内容并退出状态码为0. @Karsten根据如何以编程方式访问Snow Leopard上的文件资源分叉?您可以访问资源分叉Sansation_Regular.ttf/..namedfork/rsrc
但它是空的。@Brian我正在使用OS X 10.8.5所以也许这个问题在Mavericks中解决了?
kMDItemContentType
)。您应该查看调试信息:mdimport -d 4 Sansation_Regular.ttf
。