Итак коротенький
перевод в вольной интерпретации с адаптацией к freebsd и BSD поиску от google.
Firefox поддерживает
OpenSearch description syntax с дополнительными возможностями, сейчас рассмотрим OpenSearch-совместимый плагин для ФФ.
Тут я привожу чуть упрошенный (чем в оригинальной статье) но рабочий пример, жирным выделены части которые можно изменять для изменения функционала плагина.
<OpenSearchDescription>
<ShortName>
BSDsearch</ShortName>
<Description>
Google BSD Search</Description>
<InputEncoding>
UTF-8</InputEncoding>
<Image width="16" height="16">
data:image/x-icon;base64,
iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAIAAABGNLJTAAAAAXNSR0IArs4c6QAAAAlwSFlzAAAMTQ
AADE0B0s6tTgAAAAd0SU1FB9gKAQM5KPnC0D8AAALrSURBVCgVAeACH/0A////////////////6dPTu2Fh9/f3/////////f390qWl////////////////AgAAAA
AAAAAAAO7e3t4+PgsMDN18fNV4eOTHxwICAvWlpd2trQAAAAAAAAAAAAQAAAAAAAAAAADsvb3s+/sEsbHu/v4N5OT6iYnmUFACxMTy
Dg4AU1MAAAAAAAAEAAAAAAAAAAAA/B8fDoqK/fb2JklJ7SsrAAAAA7CwAAAABD4+AAAAAAAAAAAABAAAAAAAAAAAAO/OzqbLy+7t7W
4ODg4AAAAAAPsCAgSBgSloaAAAAAAAAAAAAAH////s7Of+/PTQJTL79vbpIyMrAAAJ29sAAADyGRk85uYAAAAAAAAAAAAAAAAE8fDu4N
GJ9PX3/zIy9cLCJtvbBgAA9gAACgAAC1ZWAAAAAAAAAAAAAAAAAAAAA1ZI9vr/Fgn4nw0aXPUmLPbg4Pn19RIAAPg8PDCmpgICAgAAAA
AAAAAAAAAAAAH8/Pzt6dL7+Q3ULyfwJTAN/PwU0tIIAAD1ODg5x8cAAAAAAAAAAAAAAAAAAAAB////AAAA+/v7xWxs4aWlIfX1AgAAAgAA/A
EBOvr6BAQEAAAAAAAAAAAAAAAAAP///////////////8mNjcEAANEAAM0AAK4SEv///////////////////////wIAAAAAAAAAAAAAAAAPCQn6AADtAADlPAA
KH/Dq29sAAAAAAAAAAAAAAAAAAAAB////AAAAAAAAAAAA9/X1bVYfFurvCfr+CfcFPQwsIKamFygoAAAAAAAAAAAAAf///+rq6gAAAMjfyMn35
KPls+P/4Af/6VAJRoH1SeypqfP6+hkrKww6OhpLSwH////c3Nz7+/vs7OwoKCjz9vNy1XIgCCA/Bj9MN0wFBQX9/f3HnZ0RDg7kh4cB////AAAAAA
AA9fX19PT0AgIC/v7+BwcHEBAQAAAA2sfH335+CtnZ/EFBIVhYdvAxV6//zGYAAAAASUVORK5CYII=
</Image>
<ms:SearchForm>
http://www.gogle.com/bsd/</ms:SearchForm>
<Url type="text/html" method=
"GET" template=
"http://www.gogle.com/bsd?q={searchTerms}"/>
</OpenSearchDescription>
1. ShortName - Краткое название поискового плагина, не должно превышать 16 символов, не может содержать HTML или другой разметки.
2. Description - Описание не должно превышать 1024 символа, не может содержать HTML или другой разметки.
3. InputEncoding - Кодировка поискового запроса (в случае UTF-8 как вы понимаете ограничений связанных с языком ввода поискового запроса нет)
4. Image - изображение используемое как иконка для поискового плагина, может быть динамически загружено по ссылке но предпочтительно преконвертированная в base64 картинка размером 16x16, пример конвертации
картинку кодированную в формат base64, получить просто, с помощью утилиты из пакета converters/base64
Для получения закодированной в base64 картинки просто выполним команду
base64tool encode image.png image.base
Исходная картинка image.png готовый файл image.base можно просмотреть любым текстовым редактором, так же некоторые почтовые клиенты понимаю картинки в этой кодировке, так же эта утилита может осуществлять обратное преобразование текста base64 в картинку для этого просто надо указать ключ decode
в примере base64 разбита на несколько строк для наглядности, в рабочем варианте должна быть введена в одну строку.
5. SearchForm - URL для перехода к странице поиска, то есть пользователь как бы реально открывает эту страничку, так как этот элемент не соответствует спецификации, он имеет префикс ms:.
6. method - метод отправки поискового запроса.
7. template - шаблон поискового запроса, в примере приведён простейший пример, можно добавить поля ?hl=ru&num=50&newwindow=1&lr=lang_ru&q= (русскоязычная страничка поиска, 50 результатов на страницу, открывать в новом окне, поиск только по русски) данные примеры специфичны для гугла, для других поисковиков могут быть другими, примеры некоторых можно увидеть
тут.
С изготовлением плагина вроде разобрались, чтобы он появился в списке быстрого поиска получившийся файл надо положить в папку ~/.mozilla/firefox/[произвольная последовательность].default/searchplugins/
если вы пользуетесь не профилем по умолчанию то путь будет немного другим, но в общих чертах надо закинуть этот плагин в папку searchplugins/ в текущем профиле ФФ.
Ну вот вроде и все если кому не лень потестите и можно будет выложить.