Diferencia entre revisiones de «Mozilla Firefox/Configuración/Crear una extensión para Firefox 3»

Contenido eliminado Contenido añadido
DSan (discusión | contribs.)
mSin resumen de edición
DSan (discusión | contribs.)
mSin resumen de edición
Línea 11:
En el primer capítulo se dará una breve introducción a las extensiones para [[Wikipedia:Mozilla Firefox|Firefox]]. A continuación se discutirán algunos temas a tener en cuenta respecto a la compatibilidad entre distinas versiones de [[Wikipedia:Mozilla Firefox|Firefox]]. En el seguno capítulo se comenzará a describir paso a paso como desarrollar una extensión. Por último, se explicará como generar el instalador de la extensión y los pasos a seguir para su instalación.
 
=== La compatibilidad ===
{{wikipedia|Características de Mozilla Firefox}}
 
En la siguiente sección te daremos una breve introducción de que son las extensiones y las funcionalidades que las mismas brindan. También se tratrá el tema de la compatibilidad.
 
====Cómo verificarlo====
Dado el rápido avance que ha tenido [[Wikipedia:Mozilla Firefox|Firefox]] en los últimos meses, algunas funciones de JavaScript han dejado de ser compatibles con Firefox. A su vez, se han modificado las estructuras que los archivos ''manifiest'' han de tener. Las referencias al browser.xul también se ha modificado. Es importante que el lector se encuentre al tanto de dichos cambios, de lo contrario su extensión no será compatible con las últimas versiones de Firefox.
Otro punto que se debe considerar, es el tema de los Managers que Firefox posee (ejemplo: loginManager). Los mismos también han sido modificados para las versiones 3.0.*.
Línea 23:
 
 
=== Comenzando a crear una extensión ===
EL siguiente paso te ayudaremos a inciar tu creación de extensión básica. Se indicarán los archivos que se deberán crear, la estructura de las carpetas y el directorio raíz donde las mismas deben ser guardadas.
 
==== Estructura de las carpetas ====
Existe una estructura obligatoria definida que las extensiones deberán cumplir. Dicha estructura define el nombre de las carpetas, la estructura jerárquica, el tipo de archivos que contendrá cada una y el lugar donde se deberán almacenar para que sean reconocidas por [[Wikipedia:Mozilla Firefox|Firefox]].
 
 
==== La ''carpeta raíz'' ====
Al comenzar se deberá crear una carpeta con el nombre identificador de la extensión. Dicho nombre deberá ser único y corresponder con el nombre definido en el archivo de instalación.
Existen dos formas de nombrar la carpeta raíz de la extensón. Como se mencionó, este nombre debe de ser único, por lo tanto la primera alternativa es generar un identificador [https://developer.mozilla.org/En/Generating_GUIDs GUID] para la misma. Para poder generar un identificador único en Windows existe el comando ''guidgen'' y en Linux ''uuidgen''.
Línea 38:
Dentro de la carpeta raíz se creará toda la estructura correspondiente a la extensión.
 
====La carpeta ''Chrome''====
La siguiente carpeta que crearemos será '''''chrome'''''. El chrome se utiliza para cargar los archivos XUL del navegador. El objetivo que se buscó al crear chrome es que los archivos XUL se almacenen bajo un path que no varíe de plataforma en plataforma sino que sea estándar para todas las implementaciones, independientemente del sistema operativo subyacente. Por ejemplo el '''browser''' del navegador [[Wikipedia:Mozilla Firefox|Firefox]] lo podemos encontrar en chrome://browser/content/browser.xul.
 
Línea 70:
* ''miextension@undominio''/chrome/skin/
 
====La carpeta Default====
La carpeta default permite definir los textos y mensajes que serán utilizados en la extensión. La carpeta en cuestión no es obligatoria, ya que los textos y mensajes pueden ser embebidos dentro del código js. La idea detrás de tener un archivo de propiedades, es facilitar el mantenimiento y la actualización de los mensajes, textos e imágenes.
 
==== Carpeta libs ====
La carpeta donde se guardarán las librerías utilizadas por la extensión será '''''libs'''''. No existe una ubicación determinada para la misma, pero es recomendable colocarla al mismo nivel de la carpeta ''chrome'' o al mismo nivel de las carpetas content'' y ''locale''
 
==== La carpeta ''Profile'' ====
 
En carpeta '''''[http://kb.mozillazine.org/Profile_folder profile]''''', [[Wikipedia:Mozilla Firefox|Firefox]] almacena todos los datos referente al usuario, ya sea información personal, marcadores, extensiones y configuración general del usuario. Dentro de la carpeta profile del usuario, se encuentra la carpeta '''extensions''', bajo la cual se guardan las extensiones.
Línea 90:
En Ubuntu encontramos la carpeta en el siguiente path: ''/home/myuser/.mozilla/firefox/defaults/'''<carpeta profile del usuario>'''/extensions/miextension@undominio''. En Ubuntu se deberán tener en cuenta los permisos de los archivos a ejecutar.
 
===Archivos de configuración===
Dentro de la siguiente sección se describirán dos de los archivos mas importantes dentro de una extensión: el manifiest y el archivo de instalación. El archivo manifiest se denomina '''''chrome.manifiest''''' y el archivo de configuración de instalación se llama '''''install.rdf'''''.
 
 
====Install.rdf====
El archivo '''''install.rdf''''' representa el “activador” de la extensión. El mismo contiene información sobre la extensión a instalar. Define los metadatos, las versiones compatibles, las actualizaciones, la plataforma, los desarrolladores entre otras. El mismo se debe encontrar en la carpeta raíz y no dentro de otra carpeta: ''miextension@undominio''/install.rdf.
 
Línea 148:
* '''''maxVersion''''': Indica la compatibilidad con una versión máxima de [[Wikipedia:Mozilla Firefox|Firefox]].
 
====Chrome.manifiest====
Dentro del archivo se declarará el tipo de material que se encuentra dentro de un paquete chrome, el nombre del paquete y la ruta hacia el mismo. También se define cual es el archivo XUL que se va a fusionar con el archivo del navegador que viene por defecto con firefox (browser.xul).
 
Línea 186:
 
 
===La interfaz de usuario y el comportamiento===
 
Ahora te explicaremos sobre los lenguajes para la implementación de las interfaces de usuarios y la implementación del comportamiento. En el mismo no se extenderá sobre los lenguajes a mencionar dado a que en wikibooks existen tutoriales que hablan y detallan sobre los mismos.
Línea 212:
{{wikipedia|XMLHttpRequest}}
 
===Generar el instalador===
Una vez alistado el proceso de archivo, debes generar un instalador de la extensión e instalarlo en el navegador Mozilla Firefox.
 
Línea 256:
 
 
===Más información===
A continuación se mencionarán algunos enlaces que tratan el mismo tema y bajo los cuales se puede obtener más información.