Firefox 搜索引擎设置 1. 概述 产品需求在Firefox 的搜索框里加上Orbit Search 的功能(同IE7 的那个搜索)。 2. 调研结果 2.1 搜索框与搜索引擎 Firefox的搜索位置情形如下: 有如下几个类型: 1) 当前选中搜索引擎:就是现在以灰色字体显示在搜索对话框中字符串所代表的搜索引 擎,当你在搜索框中输入要搜索的文字进行搜索时,就会使用这个搜索引擎进行搜索。 2) 搜索引擎列表:用户可以在自己在一个列表中选择当前搜索引擎,这个列表包括了目前 所安装的所有搜索引擎。 说明:Firefox和IE不同,在IE中有默认的搜索引擎,在用户启动IE时搜索框中会显示配 置的默认搜索引擎,而在Firefox中没有默认的搜索引擎这项配置,当用户从列表中选 在一个搜索引擎,Firefox在关闭是会保存当前的设置,再次启动Firefox时Firefox加 载之前的设置,仍然是上次用户选择的搜索引擎。 2.2 如何通过UI 界面添加搜索引擎 1) 当前选中搜索引擎:用户可以点击搜索框边上的下拉按钮进行选择。 2) 添加搜索引擎:点击搜索边框上的下拉菜单选择管理搜索引擎菜单项,会弹出如图所示 的管理界面,选择获取更多的搜索引擎会打开mozilla的一个网页,这里列举所有注册 的搜索引擎选择安装就可以。 3) 操作搜索引擎列表:用户可以通过搜索引擎管理界面,调整搜索引擎在列表中的位置。 4) 删除搜索引擎:打开搜索引擎管理界面后,选择要删除的搜索引擎,选择移除就会从 Firefox中删除该搜索引擎。 2.3 编程实现添加和配置搜索引擎 1) 添加搜索引擎:在Firefox 的安装目录的searchplugins 下面的xml 文件, 这些文件定 义了工具栏右侧的搜索引擎,按照规定的格式编写对应的搜索引擎.xml 文件,拷贝到 searchplugins 目录下面,就可以添加自己的配置搜索引擎(搜索引擎配置.xml 文件格 式描述见附录)。 2) 配置当前选中搜索引擎:Firefox 浏览器有一个专门的配置文件在C:/Documents and Settings/Administrator/ApplicationData/Mozilla/Firefox/Profiles/4hx4shor.De fault 目录下,文件名是prefs.Js,是一个脚本配置文件,Firefox 用户相关的配置都 在这个文件下面,打开文件修改user_pref("browser.search.selectedEngine", "搜 索引擎名")配置项。 3. 结论 要在Firefox 中添加自己的搜索引擎需要做两件事情: 1)生成规定格式的.xml 的文件拷贝到searchplugins 目录下。 2)修改prefs.Js 文件中user_pref("browser.search.selectedEngine", "搜索引擎名") 配置项。 4. 附录 想自己动手定义Firefox 搜索引擎,其实方法并不复杂,下面就是步骤: 以下是firefox 默认自带的google 搜索引擎的插件内容: <SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/"> <ShortName>Google</ShortName> <Description>Google Search</Description> <InputEncoding>UTF-8</InputEncoding> <Image width="16" height="16"> data:image/x-icon;base64,R0lGODlhEAAQAPfLAAATVikwdA8SnxUfgAsWpAAilholj xw4jBc7kwAlvQQ2sRMsoBUqqhMzuhY/vxw4tSgmiyM1mSUztiQ6sTE3sQ4qyxMxxRoyxiA uxR1CtBxJsBxasSJuuTFguBte0Rlf2xVc9h9W9xVjzxVr0gdj6BRh4R1o5yBcyiZbyydT 1i9b2Ddb1iFY6CJg2Vpor1dzvEJu20Z0yi23QDy1REi2OUy0O1WzOVC4PU+tVUe5Sk2xQU2 zRUO4UE21Ula2SmKEqWWF2HyPx2+a6X6e6Xqk1m+s78sUDs4UGdEQB9YfDdwaANEfHd0YEs cjAM4mAM0qANIoD9IkGdslGswuItYgL4aP0ImP2YGZ36Opzaq2wq/S+rzX/7/e8MrS1MLO/ sTb48rT8snX/83c89PZ+crq+cH1/9Dl/9Ln/93r/9fy/+Hf7P/42eDm/O7u/+T29uX2/eT2 /+f4/+f5/+j/9u//8+3/9u7/9ur5/+j//+n//+v//u3//+7//e7//+////b66/T/6vX/6/f/ 7f/07fj/4fv/4Pj/5v/45v7/4/r+7/3/6fDw+Pfx//D/9/X/8fT/8/f/8ff/8/D///H///L8 /fL///P///X7//b6/ff/+/T///b9//f///v19//w9v/09P/29v/x+f/y///z///1+v/1///2 ///3//j79P/58/z/8/z99/z/9v7/9P7/9vn7//v6//j9//n9//j///n///v//vv////4+v/5 +//6+P/4///6/P/6/v/6///7///9+P/8+v/9+v7/+Pz////8/f/9/f79///8///9//7///// /////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5 BAEAAMsALAAAAAAQABAAAAj/AEn4oIFjBw8bOnrMuJGjhowZM1T8UdYJUZ5ZcNRYWjSrVK5Q U0DMmtUnzRAXEy4o6FCEy6NDTkQIq1MmRgM0eZTlCXMgQJtRSE4gmgUkwh1EiZTNUiamy6NU UExcuoJgDCdDjQg9KgVL2SNFT1hwEvKglLBWuixZ+jSrlSBdRlL04bBBkTBdpZTpIqWsFaBc TEr0QaEhl6dWlswKW6poDRUPlmAUQKWMkTJLc76QMQNGUZMWgIgkCFJnlq5WXigwkFClVZQQ yuRgELAlk7JBymCZGYAF0ZEPrQixgUDAihxVdPpoAZAFUZIRfThxgvPCwAILDipk+OFG2ZIV oxApERtPfvwlvZ+kQFzPvv0MJQEBADs=</Image> <Url type="application/x-suggestions+json" method="GET" template="http://suggestqueries.google.com/complete/search? output=firefox&client=firefox&qu={searchTerms}"/> <Url type="text/html" method="GET" template="http://www.google.com/search"> <Param name="q" value="{searchTerms}"/> <Param name="ie" value="utf-8"/> <Param name="oe" value="utf-8"/> <Param name="aq" value="t"/> <!-- Dynamic parameters --> <Param name="rls" value="{moz:distributionID}:{moz:locale}:{moz:official}"/> <MozParam name="client" condition="defaultEngine" trueValue="firefox-a" falseValue="firefox"/> </Url> <SearchForm>http://www.google.com/firefox</SearchForm> </SearchPlugin> 我们先来分析一下 第一行就是类似于语言种类的标记(忽略) 第二行搜索引擎名称 第三行对这个搜索引擎的描述 第四行输入的语言编码根据自己情况设置(baidu 用gb2313 , google 用utf-8 等) 第五部分图标【就是显示在搜索引擎名称前的图标】很显然它要求base64 编码的16x16 的图标文件 可以去http://www./util/base64-decoder-encoder.asp 进行编码,(注意图 标文件要16x16 点阵) 将编码写入 <Image width="16" height="16"> data:image/x-icon;base64,编码</Image> 第六行搜索建议在设置firefox 的搜索引擎时有一个选项“显示搜索建议” 第七- 十一行搜索内容举个例子给你们说吧 以Google 为例搜索firefox 显示出的搜索地址为http://www.google.cn/search?complete=1&hl=zh- CN&newwindow=1&q=firefox&meta= 那么你的搜索设置就是 <Url type="text/html" method="GET" template="http://www.google.com/search"> <Param name="q" value="{searchTerms}"/> <Param name="complete" value="1"/> <Param name="hl" value="zh-CN"/> <Param name="newwindow" value="1"/> <Param name="meta" value=""/> 一行一个搜索参数Param,Firefox 会自动添加在template URL 后面搜索。注意Param 首 个P 要大写。 更多参数见http://www.google.com/help/cheatsheet.html 其他基本不用管 最后将你修改好的以上内容保存为xml 文件(utf-8)编码(建议使用UltraEditor 等文 本编辑器) 保存到firefox 安装目录/searchplugins 文件夹里,然后重新启动Firefox 就行了 |
|