sanmaodo
小狐狸
小狐狸
  • UID54178
  • 注册日期2016-06-01
  • 最后登录2018-01-30
  • 发帖数7
  • 经验7枚
  • 威望0点
  • 贡献值4点
  • 好评度0点
阅读:1864回复:14

【已解决】求教,如何手动备份搜索引擎?

楼主#
更多 发布于:2016-11-17 21:45
火狐里自定义了一些常用的搜索引擎,请问如何手动备份它?
fang5566
管理员
管理员
  • UID3719
  • 注册日期2005-03-07
  • 最后登录2019-12-11
  • 发帖数18383
  • 经验4732枚
  • 威望5点
  • 贡献值4292点
  • 好评度1066点
  • 社区居民
  • 最爱沙发
  • 忠实会员
  • 终身成就
1楼#
发布于:2016-11-17 23:17
好像就在 omni.ja 包里面:https://www.firefox.net.cn/read-53552
Firefox More than meets your experience
sanmaodo
小狐狸
小狐狸
  • UID54178
  • 注册日期2016-06-01
  • 最后登录2018-01-30
  • 发帖数7
  • 经验7枚
  • 威望0点
  • 贡献值4点
  • 好评度0点
2楼#
发布于:2016-11-18 00:52
把备份的  omni.ja 拷入新安装的火狐目录,结果启动出错。 看来没办法手动备份了。
请问版主,有备份搜索引擎的扩展吗?
aaaa007cn
千年狐狸
千年狐狸
  • UID23968
  • 注册日期2008-05-03
  • 最后登录2019-12-10
  • 发帖数1918
  • 经验1132枚
  • 威望1点
  • 贡献值232点
  • 好评度161点
3楼#
发布于:2016-11-18 01:01
omni.ja 里的是谋智预置的搜索,和本地化后的预置搜索
并且每个版本的 omni.ja 都不相同
不可直接覆盖

用户自定义的以前在 profile/searchplugins
全是 xml
改动还算方便

现在是故意统统放在谋智定制的非标准压缩格式 profile/search.json.mozlz4
备份应该可以直接复制
要改就麻烦了
sanmaodo
小狐狸
小狐狸
  • UID54178
  • 注册日期2016-06-01
  • 最后登录2018-01-30
  • 发帖数7
  • 经验7枚
  • 威望0点
  • 贡献值4点
  • 好评度0点
4楼#
发布于:2016-11-18 01:28
非常感谢!!!,测试了一下,覆盖 search.json.mozlz4 文件可以恢复以前的搜索引擎。
文科
千年狐狸
千年狐狸
  • UID39959
  • 注册日期2013-10-17
  • 最后登录2019-07-27
  • 发帖数2069
  • 经验1328枚
  • 威望4点
  • 贡献值340点
  • 好评度255点
  • 最爱沙发
  • 社区居民
  • 忠实会员
5楼#
发布于:2016-11-18 21:45
白左
千年狐狸
千年狐狸
  • UID34985
  • 注册日期2010-12-29
  • 最后登录2019-05-10
  • 发帖数2009
  • 经验617枚
  • 威望0点
  • 贡献值340点
  • 好评度65点
  • 社区居民
  • 忠实会员
6楼#
发布于:2016-11-18 22:05
这个问题之前在想修改某搜索引擎参数的时候遇到
后来在mozillazine找到了个方便的脚本,起码fx还是内置了编码/解码方法的

运行后选mozlz4文件就是解码,选json就是编码



var fp = Components.classes["@mozilla.org/filepicker;1"].createInstance(Components.interfaces.nsIFilePicker);
fp.init(window, "Open File", Components.interfaces.nsIFilePicker.modeOpen);
fp.appendFilter("Mozilla's Lz4 and json files format", "*.jsonlz4; *.mozlz4; *.json");
if (fp.show() == Components.interfaces.nsIFilePicker.returnOK) {
  var file = fp.file;
  if (file.exists() && file.isFile() && file.isReadable()) {
    Components.utils.import("resource://gre/modules/Task.jsm");
    Components.utils.import("resource://gre/modules/osfile.jsm");
    var oldFile = fp.file.path;
    if (oldFile.endsWith(".json")) {
      var newFile = oldFile.replace(/(\.json)$/, ".mozlz4");
      function compress(oFilePath,nFilePath){
        return Task.spawn(function* () {
          var jsonString = yield OS.File.read(oFilePath);
          yield OS.File.writeAtomic(nFilePath, jsonString, {compression: "lz4"});
        })
      }
      compress(oldFile,newFile);
    }
    else {
      var newFile = (oldFile.replace(".mozlz4", ".json") || oldFile.replace(".jsonlz4", ".json"));
      function decompress(oFilePath,nFilePath){
        return Task.spawn(function* () {
          var jsonString = yield OS.File.read(oFilePath, {encoding: "utf-8", compression: "lz4"});
          yield OS.File.writeAtomic(nFilePath, JSON.stringify(JSON.parse(jsonString), null, '  '), {encoding: "utf-8"});
        })
      }
      decompress(oldFile,newFile);
    }
  }
};
-いたんですか? -ええ、ずっと
aaaa007cn
千年狐狸
千年狐狸
  • UID23968
  • 注册日期2008-05-03
  • 最后登录2019-12-10
  • 发帖数1918
  • 经验1132枚
  • 威望1点
  • 贡献值232点
  • 好评度161点
7楼#
发布于:2016-11-18 22:20
毕竟代码是公开的
即使没法使用内部 api
也能移植代码做压缩、解压
比如
https://github.com/avih/dejsonlz4
eagle5678
千年狐狸
千年狐狸
  • UID4956
  • 注册日期2005-04-10
  • 最后登录2019-12-09
  • 发帖数1204
  • 经验156枚
  • 威望0点
  • 贡献值86点
  • 好评度3点
8楼#
发布于:2017-03-03 11:14
这就是增加麻烦
aaaa007cn
千年狐狸
千年狐狸
  • UID23968
  • 注册日期2008-05-03
  • 最后登录2019-12-10
  • 发帖数1918
  • 经验1132枚
  • 威望1点
  • 贡献值232点
  • 好评度161点
9楼#
发布于:2017-03-04 20:37
eagle5678:这就是增加麻烦回到原帖
方便、安全通常不可两全

本例就是谋智选择安全而抛弃方便
烈之斩
火狐狸
火狐狸
  • UID35302
  • 注册日期2011-02-19
  • 最后登录2019-05-04
  • 发帖数236
  • 经验222枚
  • 威望0点
  • 贡献值118点
  • 好评度23点
  • 社区居民
  • 忠实会员
10楼#
发布于:2017-03-16 03:29
aaaa007cn:omni.ja 里的是谋智预置的搜索,和本地化后的预置搜索
并且每个版本的 omni.ja 都不相同
不可直接覆盖

用户自定义的以前在 profile/searchplugins
全是 xml
改动还算方便

现在是故意统统放在谋智定制的...
回到原帖
那现在 profile/searchplugins 还有用么,能删掉不?
aaaa007cn
千年狐狸
千年狐狸
  • UID23968
  • 注册日期2008-05-03
  • 最后登录2019-12-10
  • 发帖数1918
  • 经验1132枚
  • 威望1点
  • 贡献值232点
  • 好评度161点
11楼#
发布于:2017-03-17 00:09
烈之斩:那现在 profile/searchplugins 还有用么,能删掉不?回到原帖
如果存在 search.json.mozlz4 并且你确定不会退回旧版本
那就可删

目前删掉 search.json.mozlz4 之后
firefox 会尝试导入 searchplugins 中的 xml
也算是修改搜索参数的一种不那么方便的方法
eagle5678
千年狐狸
千年狐狸
  • UID4956
  • 注册日期2005-04-10
  • 最后登录2019-12-09
  • 发帖数1204
  • 经验156枚
  • 威望0点
  • 贡献值86点
  • 好评度3点
12楼#
发布于:2019-06-06 14:08
又碰到这个问题,
kidzgy
火狐狸
火狐狸
  • UID35190
  • 注册日期2011-02-03
  • 最后登录2019-12-03
  • 发帖数126
  • 经验66枚
  • 威望0点
  • 贡献值38点
  • 好评度2点
13楼#
发布于:2019-06-06 14:14
打开browser\omni.ja,omni.ja\chrome\browser\searchplugins里面有搜索引擎,把自己弄好的XML复制进去,修改list.json滑到最底可看到  "zh-CN"字眼,可添加相对应的搜索引擎,以后就备份你要的搜索引擎的xml,以及修改好的list.json,火狐换版本的时候,将这些粘贴进去,删除search.json.mozlz4,运行firefox.exe即可。


以上说的这些,FF67实测可行,其他版本尚不知。
eagle5678
千年狐狸
千年狐狸
  • UID4956
  • 注册日期2005-04-10
  • 最后登录2019-12-09
  • 发帖数1204
  • 经验156枚
  • 威望0点
  • 贡献值86点
  • 好评度3点
14楼#
发布于:2019-06-15 14:07
kidzgy:打开browser\omni.ja,omni.ja\chrome\browser\searchplugins里面有搜索引擎,把自己弄好的XML复制进去,修改list.json滑到最底可看到  "zh-CN"字眼,可添加相对应的搜索引擎,以后...回到原帖
omni.ja 这个东西怎打开?rar,zip,7z都不行。


好吧,用zip命令打开






  • 中文
  • 日本語
  • English







  • 中文
  • 日本語
  • English
游客

返回顶部