Mac OS X Safari 6 默认搜索引擎在可能值之间发生变化
Posted
技术标签:
【中文标题】Mac OS X Safari 6 默认搜索引擎在可能值之间发生变化【英文标题】:Mac OS X Safari 6 default search engine change between possible values 【发布时间】:2012-10-03 00:56:05 【问题描述】:我想在 Mac OS X 上以编程方式更改 Safari 默认搜索引擎。我知道有 3 个可能的值,但 Safari 将当前值存储在哪里?我想从可可代码从谷歌更改为雅虎。可能吗?
我在com.apple.Safari.plist
文件中看到SearchProviderIdentifierMigratedToSystemPreference
变量设置为YES,可以位于~/Library/Preferences
。这可能是当前值的关键,但“系统偏好”存储在哪里?你有这方面的线索吗?
更新:我发现这个命令defaults read -g NSPreferredWebServices
总是返回选择的默认搜索引擎。这样做的问题是,当我更改它的值时,safari 不会更改值。
这是将值更改为 Bing 的命令:defaults write -g NSPreferredWebServices 'NSWebServicesProviderWebSearch = NSDefaultDisplayName = Bing; NSProviderIdentifier = "com.bing.www"; ; ';
这个命令应该在终端中执行。
【问题讨论】:
你解决了吗? 不,抱歉。我没有,从那以后我还有其他任务要做。我把问题留在这里,因为我仍然感兴趣。 【参考方案1】:显然(在 macOS 11.5 上测试),NSPreferredWebServices
设置了系统搜索引擎(例如,当使用 Spotlight 启动网络搜索时,Spotlight 会重定向您)。
每当 Safari 的搜索引擎更新时,此密钥就会更新。
当 Safari 的搜索引擎发生变化时,另一个密钥也会更新:SearchProviderShortName
(在域 com.apple.Safari
中)。显然,这是为了改变 Safari 的搜索引擎而进行的更新。 (设置为 DuckDuckGo
以使用 DuckDuckGo 为例。)
以前(在 SearchProviderIdentifierMigratedToSystemPreference
之前),DuckDuckGo 搜索引擎的键是 SearchProviderIdentifier
,值是 com.duckduckgo
。
我的建议是将它们全部设置为安全:
defaults write -g NSPreferredWebServices 'NSWebServicesProviderWebSearch = NSDefaultDisplayName = Bing; NSProviderIdentifier = "com.bing.www"; ; '
defaults write com.apple.Safari SearchProviderIdentifier -string com.bing.www
defaults write com.apple.Safari SearchProviderShortName -string Bing
相关问题:https://***.com/a/16224386
【讨论】:
以上是关于Mac OS X Safari 6 默认搜索引擎在可能值之间发生变化的主要内容,如果未能解决你的问题,请参考以下文章
Java applet无法在Safari 7下打开文件(Mac OS X 10.9)