Итак изначально для этого нам понадобится шаблон. Для GET запросов подойдет такой:
<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/" xmlns:os="http://a9.com/-/spec/opensearch/1.1/">
<os:ShortName></os:ShortName>
<os:Description></os:Description>
<os:InputEncoding>UTF-8</os:InputEncoding>
<os:Image width="16" height="16">data:image/x-icon;base64,</os:Image>
<os:Url type="text/html" method="GET" template="">
</os:Url>
</SearchPlugin>
Теперь заполняем его. Для примера я сделаю плагин для запросов на Whois сервис nic.ru:
- В тег ShortName пишем короткое имя, оно будет указывается в строке поиска и в списке плагинов
- В теге Description указываем описание плагина
- В тег Image мы должны записать иконку закодированную с помощью base64 (т.к. мы не можем записывать в xml файлы бинарные данные) для этого:
- Сначала получаем иконку (это можно сделать несколькими способами, например, скачать favicon c сайта либо сделать самому и сохранить в формате bmp размером 16х16)
- Теперь с помощью замечательного набора утилит openssl кодируем данные в формате base64: команда будет выглядеть так "openssl enc -base64 -in favicon.ico"
- Весь вывод команды openssl копируем в тег Image после строки "data:image/x-icon;base64,"
- В Url, в атрибуте template указываем строку-шаблон для поиска:
- Для этого идем на сайт
- Пишем любой запрос, например на поиск "12345678"
- В строке поиска видно, что шаблон поиска выглядит так: "http://www.nic.ru/whois/?query=" и в конце добавляется наша срока
- В template указываем url запроса, а вместо строки запроса пишем {searchTerms}
<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/" xmlns:os="http://a9.com/-/spec/opensearch/1.1/">
<os:ShortName>NIC WhoIS</os:ShortName>
<os:Description>WhoIS сервис</os:Description>
<os:InputEncoding>UTF-8</os:InputEncoding>
<os:Image width="16" height="16">data:image/x-icon;base64,AAABAAEAEBAAAAEAGABoAwAAFgAAACgAAAAQAAAAIAAAAAEAGAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAD////////////////////////379/v3r/v3r/79+//////
///////////////////////////////////gvX/JjB/BfADBfADBfADBfADMlC/o
zp/////////////////////////379/MlC/BfADBfADBfADBfADBfADBfADBfADB
fADQnD/79+/////////////9+/fkxY7gvX/YrWDUpFHgvX/gvX/kxY/hwofFhBfB
fADBfADMlC/79+/////////k8v2Xy/ev2Pn05s/05s+v2PmXy/fK5fv////////w
3r/FhBfBfADgvX/////58ubX6/w0mfA/n/H///////8/n/E0mfDK5fvy48j47t//
///05s/BfADFhA/79+/iwYr///80mfA0mfDk8v3X6/w0mfA0mfD////JjCXBfAD7
9/D////YrWDBfADozp/UpU/47t9ksfQ0mfC93vqKxfc0mfBwuPX9+vXBfADBfADj
xY/////nzp/BfADgvX/QnD/r1q6Kxfc0mfA0mfA0mfA0mfCj0vj////UpFHBfADY
rWD////05s/BfADgvX/YrV/gvX+j0vg0mfBhsPS12vphsPQ0mfCXy/f47t/BfADM
lDP////////BfADgvX/kxY/UpFHK5fs0mfBstvT////x9vk0mfA/n/H////JjCXB
fAD////////QnULs1q/379/JjCX///80mfA0mfCKxfdisfQ0mfBLpPL9+/fBfADB
fADw3r/////euXf////////ctW/79/BYrPM0mfA0mfBLpPJ9v/a93vrq1KrBfADB
fADctW/w3r/t27j////////////z48v////////////79/Dnzp/UpFHFhBfBfADB
fADBfADYrV/////////////////79+/UpU/BfADBfADBfADBfADBfADBfADBfADB
fADctW/////////////////////////////v3r/UpU/FhA/BfADBfADJjB/YrV/v
3r////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA</os:Image>
<os:Url type="text/html" method="GET" template="http://www.nic.ru/whois/?query={searchTerms}">
</os:Url>
</SearchPlugin>
Все это необходимо сохранить как xml файл, например, nic-whois.xml и скопировать в папку searchplugins своего профиля:
Для Linux пользователей это будет "~/.mozilla/firefox/xxxxxxxx.default/searchplugins"
Для Windows пользователей "%USERPROFILE%\Application Data\Mozilla\Firefox\Profiles\xxxxxxxx.default\searchplugins"
xxxxxxxx - это название вашего профиля, оно у всех имеет разное значение.
Вот и все.
Здесь (!warning eng) можно прочитать о том же, но более подробно.