Localizing in Gecko 1.9
Gecko 1.9 incluye un nuevo y más robusto método para localizar descripciones añadidas y otros metadatos. Todas las diferentes descripciones aparecen ahora en el fichero install.rdf utilizando las propedades em:localized
. Cada una contiene al menos una propiedad em:locale
que marca el localizador (locale) para el cual deberá utilizarse la citada información y, además, todas las diversas cadenas (strings) del localizador. El siguiente ejemplo demuestra lo dicho (la mayoría de las propiedades normales del manifiesto han sido suprimidas para abreviar):
<?xml version="1.0"?> <RDF xmlns="https://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="https://www.mozilla.org/2004/em-rdf#"> <Description about="urn:mozilla:install-manifest"> <em:id>[email protected]</em:id> <em:localized> <Description> <em:locale>de-DE</em:locale> <em:name>Tab Sidebar</em:name> <em:description>Zeigt in einer Sidebar Vorschaubilder der Inhalte aller offenen Tabs an.</em:description> </Description> </em:localized> <em:localized> <Description> <em:locale>es-ES</em:locale> <em:name>Tab Sidebar</em:name> <em:description>Muestra una vista previa de sus pestañas en su panel lateral.</em:description> </Description> </em:localized> <em:localized> <Description> <em:locale>nl-NL</em:locale> <em:name>Tab Sidebar</em:name> <em:description>Laat voorbeeldweergaven van uw tabbladen in de zijbalk zien.</em:description> </Description> </em:localized> <em:name>Tab Sidebar</em:name> <em:description>Displays previews of your tabs in your sidebar.</em:description> </Description> </RDF>
Todos los metadatos mencionados más abajo pueden localizarse mediante este procedimiento. La información de localización "por defecto" proporcionada por la propiedad em:localized
, puede ser pasada por alto utilizando un conjunto de preferencias de localización, según se detalla a continuación.
El proceso para seleccionar la propiedad em:localized
a utilizar para una determinada localización (locale) es el siguiente:
- Si existe una propiedad con un identificador
em:locale
que se corresponde exactamente con la localización (locale) entonces se usará esa propiedad. - Si se encuentran comparaciones inexactas, entonces se utilizará aquella que tenga el máximo de partes coincidentes, estando dichas partes separadas entre sí por un guión (es decir, "es" coincidiría con "es-ES" y viceversa).
- Si existe más de un localizador (locale) con el mismo número de partes coincidentes, entonces se utilizará el más general (es decir, "en" será preferente en "en-GB" cuando se busque, antes que "en-US").
En primer lugar se mostrará la localización actual "en-GB" y posteriormente se mostrará la segunda localización correspondiente a "en-US".
Si no se ha establecido ninguna preferencia y no se encuentra una coindidencia em:localized property
para la localización actual "en-GB" o "en-US" entonces se utilizarán las propiedades especificadas directamente en el manifiesto de instalación, como último recurso, tal y como se utilizaban en las versiones anteriores a la versión Gecko 1.9.
Localizar antes de Gecko 1.9
Antes de Gecko 1.9, los desarrolladores de extensiones o aplicaciones añadidas (add-ons) tenían que seguir un procedimiento especial para definir las descripciones adicionales locales para las aplicaciones añadidas orientadas a las aplicaciones basadas en el juego de herraminetas "toolkit" original (tales como Firefox o Thunderbird).
- Si aún no dispone de ellas, cree localized properties files. Asegúrese de que utiliza la codificación UTF-8 para garantizar que los caracteres extranjeros se muestren correctamente.
- Añada la siguiente línea a cada uno de sus ficheros de propiedades de localización (donde: EXTENSION_ID corresponda a su identificador de extensión (extension ID) (
<em:id>
de install.rdf) y LOCALIZED_DESCRIPTION es la descripción de su extensión, que usted desea que aparezca en el idioma determinado):extensions.EXTENSION_ID.description=LOCALIZED_DESCRIPTION
- Si aún no dispone de uno, cree a default preferences file.
- Añádale la siguiente línea (donde: EXTENSION_ID coincida con su identificador de aplicación (application ID) de install.rdf y PATH_TO_LOCALIZATION_FILE sea la ruta correcta del fichero de localización que usted añadió anteriormente):
pref("extensions.EXTENSION_ID.description", "PATH_TO_LOCALIZATION_FILE");
Cadenas Localizables
Los siguientes "metadatos" de las extensiones o aplicaciones añadidas (add-ons) pueden ser localizados utilizando este proceso:
- name (nombre)
- description (descripción)
- creator (creador)
- homepageURL (URL de la página de inicio)
Listas Localizables
En los casos en que puedan existir múltiples valores, se añade un índice numérico al final del nombre de cada preferencia:
extensions.EXTENSION_ID.contributor.1=FIRST_LOCALIZED_CONTRIBUTOR_NAME extensions.EXTENSION_ID.contributor.2=SECOND_LOCALIZED_CONTRIBUTOR_NAME extensions.EXTENSION_ID.contributor.3=THRID_LOCALIZED_CONTRIBUTOR_NAME pref("extensions.EXTENSION_ID.contributor.1", "PATH_TO_LOCALIZATION_FILE"); pref("extensions.EXTENSION_ID.contributor.2", "PATH_TO_LOCALIZATION_FILE"); pref("extensions.EXTENSION_ID.contributor.3", "PATH_TO_LOCALIZATION_FILE");
Los siguientes "metadatos" de las extensiones o aplicaciones añadidas (add-ons) pueden localizarse utilizando este proceso:
- developer (desarrollador)
- translator (traductor)
- contributor (contribuidor)