也许一个相当长的解释,说明事情如何进行,可能会清除您和其他人对这些“隐藏”偏好的搜索。
大多数应用程序在启动时都将读取其首选项文件,并且defaults
存在该工具以确保首选项文件是有效结构且不包含语法错误。(它还允许系统更改密钥的存储方式,并且人们不必知道实现细节,并且可以使用defaults命令进行所有读写。)
英语风格和语法指南可确保我在此处输入的单词对普通英语使用者有意义,并且标准化默认系统可设置框架,使每个人都知道会发生什么。偏好列表格式比人类语言更加严格和数学,但是概念相似。
Mac OS X用户默认系统是键值存储(如果需要,也可以是数据库)。
您可以将任何内容写入这些首选项键值存储,莎士比亚十四行诗,数字,购物清单。如果程序被编码为查找特定键,它将读取存储的值。如果它不是在寻找那个钥匙-它的价值就是坐在那儿未使用和未读。
这带来了如何知道特定程序在启动时可能在寻找什么值。归结为您必须知道其价值或对程序进行反向工程。
存在许多工具可以查看程序并尝试找出嵌入了哪些字符串(键),例如strings
dbx / lldb以及链接到您自己的库中以转储特定程序的内部结构。
实际上,以“隐藏”的方式添加了一些测试所需的内容,因此您无法查看程序的首选项窗格,也不会看到尚未准备广泛使用的这些新功能。从某种意义上说,获得全面的列表绝非易事,除非该程序的作者发布了源代码或以其他方式公开记录了这些设置。
当您阅读特定应用程序的默认存储时,您只是在阅读应用程序创建默认设置或Mac OS X附带的设置时所写的“书”。这就是为什么您不会收到详尽无遗的信息该应用程序实际上可以更改的列表。