Мне удалось изменить поисковую систему по умолчанию с Bing на DuckDuckGo в Thunderbird 52.4.0 с чрезвычайно запутанным обходным решением. Мне не понравились никакие пресеты Thunderbird, поэтому я выбрал DuckDuckGo, потому что, хотя я никогда не хочу искать в Thunderbird, если я буду искать случайно, я бы предпочел использовать поисковую систему, которая обещает не отслеживать меня.
Для этого вам понадобится экземпляр Firefox с поисковой системой DuckDuckGo (я использовал Firefox 58.0.1). Я буду использовать [TB profile]
для ссылки на ваш каталог профиля пользователя Thunderbird, [FF profile]
для ссылки на ваш каталог профиля пользователя Firefox и [FF app]
для ссылки на папку приложения Firefox.
Сначала мы хотим найти ddg.xml
файл, который мы будем использовать для поиска Thunderbird. Если вы установили этот плагин самостоятельно, вы можете найти его в [FF profile]/searchplugins/
каталоге. В противном случае вы можете найти его внутри [FF app]/browser/omni.ja
архива. Чтобы найти его, разархивируйте omni.ja
архив во временную папку unzip omni.ja
(с помощью утилиты Info-ZIP; 7-Zip и другие инструменты не поддерживают метод ZIP, используемый Firefox). Затем в этом временном месте найдите ddg.xml
файл ( find -iname ddg.xml
), возможно ./chrome/en-US/locale/browser/searchplugins/ddg.xml
, в зависимости от вашей локали. Как только вы нашли ddg.xml
, скопируйте его в свой [TB profile]/searchplugins/
каталог.
Затем мы хотим использовать настройки поиска Firefox, но немного их изменим. И Firefox, и Thunderbird теперь сжимают свои настройки для повышения производительности, но это значительно усложняет извлечение и редактирование этих настроек. Чтобы открыть сжатый файл настроек Mozilla, вы можете использовать следующий код в консоли браузера ( Ctrl+Shift+J
для меня):
var { classes: Cc, interfaces: Ci, utils: Cu} = Components;
function decompressFile(oFilePath, nFilePath) {
Cu.import("resource://gre/modules/Task.jsm");
Cu.import("resource://gre/modules/osfile.jsm");
return Task.spawn(function*() {
var jsonString = yield OS.File.read(oFilePath, {
compression: "lz4"
});
yield OS.File.writeAtomic(nFilePath, jsonString);
})
}
// Set up file chooser
var fp = Cc["@mozilla.org/filepicker;1"].createInstance(Ci.nsIFilePicker);
var fu = Cu.import("resource://gre/modules/FileUtils.jsm").FileUtils
fp.init(window, "Open File", Ci.nsIFilePicker.modeOpen);
fp.appendFilter("Bookmarks/Session (.jsonlz4)", "*.jsonlz4");
fp.appendFilter("Search Engines (.mozlz4)", "*.mozlz4");
fp.appendFilter("Add-ons Files (.lz4)", "*.lz4");
// Call file chooser
fp.open((aResult) => {
if (aResult == Ci.nsIFilePicker.returnOK) {
if (fp.file.exists() && fp.file.isFile() && fp.file.isReadable()) {
var oldfile = fp.file.path;
var newfile = oldfile + ".json"; // Construct output file name
try {
decompressFile(oldfile, newfile);
console.log("Saved as: \"" + newfile + "\"");
if (confirm("Open JSON file in a Firefox tab?")) {
var uri = "file:///" + newfile.replace(/\\/g, "/");
window.open(uri, "_blank");
}
} catch (err) {
console.log(err);
}
}
}
});
С помощью приведенного выше кода, вы хотите открыть [FF profile]/search.json.mozlz4
файл, и он будет генерировать файл search.json.mozlz4.json
. Отредактируйте этот файл JSON и, предположив, что вы распечатали содержимое, вы хотите отредактировать строку для _loadPath
переменной DuckDuckGo , которая будет выглядеть примерно так:
"_loadPath":"jar:[app]/omni.ja!browser/ddg.xml",
Вы хотите изменить эту переменную так, чтобы она указывала на местоположение в вашем профиле Thunderbird, куда вы скопировали файл плагина (и в этом случае оставьте [profile]
как [profile]
; Thunderbird будет интерпретировать это как вашу [TB profile]
папку):
"_loadPath":"[profile]/searchplugins/ddg.xml",
На этом этапе убедитесь, что вы вышли из экземпляра Thunderbird и скопируйте этот файл в [TB profile]/search.json
. Удалите существующий [TB profile]/search.json.mozlz4
файл и снова запустите Thunderbird. Thunderbird должен сжать ваш файл для вас и теперь показывать DuckDuckGo как выбираемый параметр в ваших Options > General > Default Search Engine
настройках.
Таким образом, выполните следующие действия:
- Скопируйте
ddg.xml
файл Firefox в свой профиль Thunderbird
- Распакуйте и отредактируйте файл
search.json.mozlz4
настроек из Firefox, чтобы настроить его на поисковый плагин в Thunderbird, и используйте эти новые настройки в своем профиле Thunderbird.