Internacionalización de componentes internationalizing-components
Internacionalice los componentes y los cuadros de diálogo para que las cadenas de la interfaz de usuario se puedan presentar en distintos idiomas. Los componentes diseñados para la internacionalización permiten externalizar, traducir y luego importar las cadenas de IU en el repositorio. Durante el tiempo de ejecución, las preferencias de idioma del usuario o la configuración regional de la página determinan qué idioma se muestra en la interfaz de usuario.
Utilice el siguiente proceso para internacionalizar los componentes y proporcionar la IU en diferentes idiomas:
-
Implemente sus componentes con código que internacionalice las cadenas. El código identifica las cadenas que se van a traducir y selecciona el idioma que se va a presentar en el tiempo de ejecución.
-
Crear diccionarios y add las cadenas en inglés que traducir.
-
Exportar el diccionario en formato XLIFF, traduzca las cadenas y importar los archivos XLIFF vuelven a AEM. También puede añadir traducciones manualmente al diccionario.
-
Incorporar el diccionario al proceso de administración de versiones de la aplicación.
Diccionarios de idioma language-dictionaries
El marco de internacionalización AEM utiliza diccionarios en el repositorio para almacenar cadenas en inglés y sus traducciones en otros idiomas. El marco de trabajo utiliza el inglés como idioma predeterminado. Las cadenas se identifican con su versión en inglés. Normalmente, los marcos de internacionalización utilizan ID alfanuméricos para cadenas de interfaz de usuario. El uso de la versión en inglés de la cadena como ID tiene varias ventajas:
- El código es fácil de leer.
- El idioma predeterminado siempre está disponible.
Las cadenas localizadas se pueden almacenar en varios diccionarios del repositorio. AEM diccionarios del sistema se encuentran debajo de la variable /libs
nodo . Puede crear diccionarios para los componentes debajo de /apps
nodo . El AEM marco de internacionalización combina los diccionarios y los pone a disposición en Sling como un solo ResourceBundle
objeto. Cuando se procesan los componentes, recuperan las cadenas traducidas del paquete de recursos. Los diccionarios combinados también se implementan en el servidor web en formato JSON para proporcionar cadenas traducidas al código Javascript en páginas web.
Además, el Herramienta Traducción permite administrar todos los diccionarios desde una ubicación central.
/libs
nodo .Superposición de cadenas en los diccionarios del sistema overlaying-strings-in-system-dictionaries
Cadenas en diccionarios debajo de la variable /apps
el nodo anula las cadenas duplicadas en los diccionarios que están por debajo de /libs
nodo . Si los componentes utilizan cadenas incluidas en los diccionarios AEM del sistema, duplique la cadena en su propio diccionario. Todos los componentes utilizarán las cadenas del diccionario.
Tenga en cuenta que no se puede predecir qué traducción se utiliza cuando las cadenas están duplicadas en diccionarios que se encuentran todos debajo del /apps
nodo .