Firefox

Hacer un SearchPlugin para firefox

Imagen/borrador-avatar.png

Esta sección es un esbozo en construcción. Se aprecian tus aportes y paciencia ;)

Estructura

El archivo XML sigue unos patrones muy fáciles de "programar":

<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
<ShortName>NombreDelMotor</ShortName>
<Description>DescripciónDelMotor</Description>
<InputEncoding>CodificaciónDeEntrada</InputEncoding>
<Image width="16" height="16">data:image/x-icon;base64,DatosDeLaImagen</Image>
<Url type="text/html" method="método" template="URLdeLaBúsqueda">
  <Param name="parámetro1" value="parámetro1"/>
  ...
  <Param name="parámetroN" value="parámetroN"/>
</Url>
</SearchPlugin>

Con esto bastaría para crear nuestro searchplugin, ahora y paso a paso, crearemos el SearchPlugin de el-directorio.

NombreDelMotor

Sencillo: el-directorio. Creo que no hay ninguna complicación en esta parte.

DescripciónDelMotor

Simplemente es una descripción de nuestro motor de búsqueda, yo he puesto Motor de búsqueda para www.el-directorio.org.

Codificación de entrada

Es el juego de caracteres que usaremos para nuestro motor. En mi caso, he usado UTF-8 que es la usada según el código fuente de el-directorio. Más información: Codificación de Caracteres

DatosDeLaImagen

Este es el ícono que representa al buscador:

Icono.jpg

Como ven en la imagen, he usado por obvias razones el favicon de el-directorio.

Podemos a partir de una imagen generar el nuestro desde FavIcon from Pics. Una vez tengamos el .ico, vamos a The data: URI kitchen, marcamos la casilla base64, usamos el botón Examinar... para buscar nuestro .ico y por último, click al botón Generate.

La página nos redireccionará a una nueva en donde tendremos los DatosDeLaImagen. Lo que se hizo acá, fue convertir el .ico a letras, números y símbolos, que traducen gracias a CSS, el ícono.

método y URLdeLaBúsqueda

Los dos únicos métodos son GET y POST e indican qué tipo de petición se hará para obtener el resultado. En este caso, es GET.

La URLdeLaBúsqueda y por explicarlo de la manera más sencilla posible, es la URL que va desde desde el principio hasta el primer signo de interrogación sin incluirlo. Me explico, cuando buscamos en Google por ejemplo, obtenemos algo como esto:

http://www.google.com.co/search?q=busqueda

La URLdeLaBúsqueda será

http://www.google.com.co/search

Cuando buscamos en el-directorio, tenemos esto:

http://el-directorio.org/?action=fullsearch&context=180&value=busqueda

La URLdeBúsqueda será

http://el-directorio.org/

parámetro1 [...] parámetroN

Cuando buscamos en el-directorio, tenemos esto:

http://el-directorio.org/?action=fullsearch&context=180&value=busqueda

Ahora, desglocemos esa URL a partir del signo de interrogación y terminando en &:

Los parámetros que van en el atributo name serán action, context y value. Y los que irán en value serán fullsearch, 180 y busqueda respectivamente. De tal manera que obtendremos esto:

<Url type="text/html" method="GET" template="http://el-directorio.org/">
  <Param name="action" value="fullsearch"/>
  <Param name="context" value="180"/>
  <Param name="value" value="busqueda"/>
</Url>

Sin embargo, hay algo que no concuerda, y es que busqueda puede ser cualquier palabra o frase. Pero Firefox tiene la capacidad de traducir {searchTerms} en esa palabra o frase. Así que el resultado sería este:

<Url type="text/html" method="GET" template="http://el-directorio.org/">
  <Param name="action" value="fullsearch"/>
  <Param name="context" value="180"/>
  <Param name="value" value="{searchTerms}"/>
</Url>

Eso es todo :)

Resultado Final

<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
  <ShortName>el-directorio</ShortName>
  <Description>Motor de búsqueda para el-directorio.org</Description>
  <InputEncoding>UTF-8</InputEncoding>
  <Image width="16" height="16">data:image/x-icon;base64,AAABAAEADhAAAAEAIADoAwAAFgAAACgAAAAOAAAAIAAAAAEAIAAAAAAAgAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADp6elMr6%2Bv8djY2H4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8PDwEmxsbr9TU1T%2Frq6uwfn5%2BQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADu7u8YRUVI2y8uMP%2BQkJDd9fX1IgAAAAAAAAAA%2F%2F%2F%2FAv%2F%2F%2FwIAAAAAAAAAAP7%2B%2Fgr4%2BPgq9vb2Mvv7%2BxJzcnWpJSQn%2F3Jycv%2Fj4%2BNmAAAAAP39%2FQrl5eV42trajezs7Ebl5eVqwL%2FAvZaWlumTk5PxxcXFt5%2BfoJcjIiX%2FWVhZ%2F8vLy5cAAAAAy8vMYn9%2FgO9ubm%2F%2FcnJy%2BVxcXf01NDf%2FJyYp%2FzQzNf9vb2%2F%2Fp6an0SwrLvNCQkP%2FsLCww%2Fz8%2FA65ubpwKCcr%2FyIhJf8fHiH%2FGhkd%2FygnK%2Fc4NzvlJSQo%2B4CAgenS0tKNRkVI2zIyNP%2BTk5Pr8vLyOu7u7h6JiYuVT05R1VNSVdN8e3yfwsLBTuTk5CKrqqxswcHCWv%2F%2F%2FwZ3d3mnJyYq%2F3d3d%2F3g4OBsAAAAAP%2F%2B%2FQLv7u4m2trbRtPU7Urb3P06%2BPn%2FCgAAAAD8%2B%2FwGAAAAAKGgonIjIiX%2FXl5f%2F8bGxqMAAAAA3d3sOn19t8VDQXftODuf%2BTxBwvWAg%2BOn8vL9FgAAAAAAAAAAyMfISCgoK%2FlGRkj%2Fp6en1e%2Fv9R5zc9bHOjq%2B%2FTc4kv9mZoP%2FRkNW%2Fyorcv%2Bzs%2BRwAAAAAAAAAADm5uckPTxA4z49QP%2Bjo6Pr2dnjNrGw4XybmL6ndl5F%2F15NKf%2BOh3u%2FkpCXuXWdtsuo6u6F8%2Fz8HP79%2FQJ8e32lYmFk0eTk5FL9%2Ff0C%2Fv%2F%2FAtK%2BiZXLkgD%2FsYEN%2Ferat1T9%2Ff8Gj%2BXupTfU4%2F%2Bm4%2BuPAAAAAO3t7R7o6Ogk%2F%2F%2F%2FBAAAAAD%2B%2F%2F8E3cBtsd2lCf%2FXow7%2F48Fkr%2F%2F89Azy%2Fv8WxPH2Xr%2Fb7GzY4fNO%2Bvv%2BEAAAAAD%2F%2F%2F8CAAAAAAAAAADp2q1uzKMs9enHX8fXrCvv07yBnfr59hAAAAAAAAAAAPP2%2FB719%2FwiAAAAAAAAAAAAAAAAAAAAAPv7%2Bg7Mwqd47eXPRuHYvFrOx7Vu%2B%2Fr5DAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP%2FcAAD%2FjAAA%2F4wAAP%2BMAADYBAAAgAQAAIAEAACHxAAA%2F%2BAAAMHgAACB4AAAwGQAAMY8AADD%2FAAA4fwAAP%2F8AAA%3D
  </Image>
  <InputEncoding>UTF-8</InputEncoding>
  <Url type="text/html" method="GET" template="http://el-directorio.org/">
    <Param name="action" value="fullsearch"/>
    <Param name="context" value="180"/>
    <Param name="value" value="{searchTerms}"/>
  </Url>
</SearchPlugin>

Abrimos nuestro editor de textos, pegamos eso y lo guardamos con extensión .xml. Ya tenemos nuestro searchplugin de el-directorio.

Descargar searchplugin de el-directorio

el-directorio.xml

Click derecho, Guardar enlace como...

Lo guardamos en

./.mozilla/firefox/nombre_largo_y_raro.default/searchplugins

Petición

A manera de favor, me gustaría mucho que se incrustara el siguiente código en index de el-directorio

<link rel=”search” type=”application/opensearchdescription+xml” title=”el-directorio” href=”http://www.el-directorio.org/el-directorio.xml”/>

Eso para que cualquier visitante que llegue desde Firefox vea cómo el cuadro de searchplugins "alumbra" y al pulsarlo, ofrece instalar el searchplugin de el-directorio, en este caso alojado en la raíz del FTP.

Ejemplo.

Ya existía

Acabo de darme cuenta que el searchplugin ya existía y fue hecho por Luis Pérez. Sin embargo, creo que se trata de un .src, extensión con la que se trabajaba antes y que según parece aún funciona, el problema es que si metemos un .src en la carpeta seachplugins de Firefox, ya no lo visualizaremos en nuestro navegador por tratarse de una versión superior a la 1.5; si mal no recuerdo, a partir de ahí, se empezaron a trabajar los searchplugins con XML.

La única manera es alojarlo en mozdeb.org e instalarlo para poder visualizarlo en el navegador.

Claro está, que es muchísimo más sencillo hacer el searchplugin con extensión .src. Así que es cuestión de intentarlo :)

SearchPluginFirefox (last edited 2008-04-20 14:40:24 by localhost)