Al cargar un archivo en un proyecto, todos los recursos nuevos se extraen de ese archivo y se almacenan en un proyecto. El formato del archivo cargado no tiene que ser el formato inicial de configuración para el proyecto. Si se proporcionan etiquetas para agrupar recursos, las nuevas claves tendrán esas etiquetas aplicadas.
Algunos formatos, como Gettext, proporcionan información meta valiosa adicional, como comentarios, descripciones o información sobre formas plurales. Esta información se extrae siempre que sea posible y se almacena junto con los recursos asignados, lo que permite guardar toda la información valiosa proporcionada en los archivos de localización para su uso posterior.
Existen varios métodos para cargar archivos:
-
En la aplicación, al crear un nuevo proyecto o al seleccionar Cargar archivo en una página de proyecto
-
via API
-
via CLI
Al cargar a través de la API o CLI, para formatos de archivo que incluyen múltiples localizaciones en un solo archivo (p. ej., Phrase Strings .JSON, .YAML, .XLSX/.CSV multilingüe, .XLIFF, .TMX, Genesys JSON), el identificador de localización de cada traducción en el archivo se hace coincidir con una localización del proyecto por nombre de idioma, exactamente como se configuró en la pestaña del proyecto. Los códigos de localización (p. ej., "en-US") no se usan para esta concordancia a menos que esa cadena exacta sea también el nombre configurado de la localización. Si el identificador de localización de una traducción no coincide con ningún nombre de localización en el proyecto, sus traducciones no se importarán sin previo aviso.
-
De forma predeterminada, solo se extrae el contenido nuevo y no se eliminan ni actualizan las claves existentes en un proyecto de localización; no se pueden perder datos al cargar archivos. Si se requiere sobrescribir datos existentes, Reemplazar los recursos del proyecto con el contenido del archivo de localización seleccionando la opción . Las traducciones existentes se sobrescribirán con el contenido del archivo de localización cargado.
Esta opción también está disponible en la API.
Nota
Para evitar la pérdida de datos, asegúrese de descargar los cambios más recientes de Phrase al archivo de localización antes de modificarlo y volver a cargarlo con la opción .
-
Ingrese un identificador único (p. ej., la ruta del archivo) para anteponer a los nombres de las clave de traducción cargadas. Usar un prefijo significativo relacionado con el proyecto o archivo para mantener los nombres de las clave organizados.
Por ejemplo, una clave importada
hello_worldcon el prefijoproject_resultará en la claveproject_hello_world.El prefijo de la clave de traducción asegura que las clave se comparen con las existentes para evitar colisiones entre diferentes proyecto o archivos.
Esta opción también está disponible en la API y la interfaz CLI.
-
Agregar nuevas clave y sobrescribir las existentes con el contenido del archivo cargado.
-
Actualizar las traducciones meta solo si el texto fuente existente en el idioma predeterminado del proyecto coincide con el texto fuente en el archivo multilingüe cargado.
-
Seleccionar esta opción si se requiere actualizar todas las descripciones de las clave del archivo cargado. Las descripciones vacío sobrescribirán las existentes. Las descripciones pueden contener cualquier información adicional para los traductores y ayudar a identificar las clave individuales en el editor.
-
Para mantener las traducciones organizadas, agregue múltiples etiqueta a las clave con etiquetas significativas. Seleccionar esta opción para evitar que las nuevas clave se etiqueten automáticamente con una etiqueta de cargar.
-
Seleccionar esta opción para etiquetar automáticamente las nuevas clave y las clave con traducciones actualizadas al cargar. Esto ayudará a distinguir entre Strings de traducción nuevos, actualizados y antiguos, asegurando que solo se procesen las clave relevantes.
Esta opción también está disponible en la API.
-
Especifique la codificación (p. ej., UTF-8) del archivo o haga que se seleccione automáticamente (la codificación seleccionada automáticamente puede resultar en una codificación incorrecta y puede revertirse deshaciendo la cargar).
-
-
evita la necesidad de verificar nuevamente las traducciones de idiomas que no son principales al actualizar las traducciones.
-
trata todas las traducciones cargadas como revisado. Esta opción está disponible cuando se ha activado el flujo de trabajo de revisión avanzado. Indica que las claves están listas para ser enviadas a producción.
-
trata todas las traducciones cargadas como verificadas.
-
Para cargar archivos en Strings, siga estos pasos:
-
Antes de cargar, asegúrese de que el archivo tenga el formato correcto según el tipo.
-
Desde un proyecto, seleccionar Cargar archivo en el menú .
Se abre la página .
-
Haga clic en Elegir archivo, seleccionar un archivo de un directorio.
El archivo seleccionado se añade al campo .
-
Seleccionar un para el archivo.
Los formatos sugeridos se presentan primero según el tipo de archivo.
-
Seleccionar un idioma para el contenido del archivo de la lista desplegable.
Si esta información no está en el archivo mismo, crear un nuevo idioma para el contenido o usar uno existente.
-
Opcionalmente, proporcione etiquetas para asignar a las nuevas claves y cualquier otra opción.
-
Haz clic en Guardar.
El contenido se importa y se convierte en claves.
-
Cargar fallida
Si un archivo no pudo procesarse correctamente, se proporcionan detalles del error para ayudar a mitigar el error.
-
Cargar exitosa
Después del procesamiento exitoso de un archivo de traducción, se presenta una página de resumen que ofrece una descripción general de la cargar con botones que enlazan a los Siguiente pasos. Haga clic en la etiqueta cargar para abrir el archivo en el editor.
-
Eliminando claves
Para evitar la eliminación accidental de claves al eliminar claves de un archivo de localización y cargarlo de nuevo, esas claves no se eliminan automáticamente.
Para eliminar esas claves, siga estos pasos:
Las claves no mencionadas son claves que no están incluidas en la carga actual pero que aún existen en el proyecto. Al eliminarlas, todas las claves y traducciones asociadas que no fueron incluidas en el archivo cargado son eliminadas del proyecto.
El límite para eliminar claves no mencionadas es de 100,000 claves. En proyectos que exceden este límite, la opción no está disponible.
-
Deshacer una carga
Cada carga activa múltiples acciones y puede modificar muchos datos dentro de los proyectos y no es posible retractarse de una carga.
Para eliminar claves que fueron (erróneamente) introducidas por un archivo cargado, siga estos pasos:
-
Desde el resumen de carga de la carga afectada, haga clic en Eliminar y seleccione .
-
Confirmar la selección.
Todas las claves y traducciones asociadas creadas por esa carga son eliminadas. Las traducciones para claves que existían antes de la carga no serán eliminadas. Para eliminar traducciones individuales, use el historial de versiones para cada traducción.
-
Desde cualquier página de proyecto, seleccione en el menú para acceder al archivo de carga.
El archivo de carga enumera todas las cargas históricas en todos los estados posibles. Haga clic en el menú desplegable para filtrar las cargas por estado (, y/o ). Para localizar una carga específica, usar el cuadro de búsqueda en la parte superior para buscar por nombre.
Acceder a resúmenes detallados de carga de los recursos afectados haciendo clic en una carga enumerada. Todas las cargas exitosas también se presentan en el flujo de actividad de un proyecto.
Los archivos de idioma se pueden exportar desde un proyecto en cualquier momento y a cualquier formato admitido.
Los archivos se pueden exportar desde la aplicación, a través de API, o CLI.
Los archivos se pueden descargar desde la pestaña de cualquier proyecto al Seleccionar y hacer clic en Descargar (varios archivos) o en el botón Más opciones /Descargar de un idioma.
Las opciones de descarga se presentan al descargar un archivo en la ventana con pestañas para , y .
Seleccionar diferentes s presenta diferentes opciones. Para obtener más detalles, consulte el artículo relevante sobre el formato específico.
Opcionalmente, usar el campo en la pestaña para especificar un nombre de archivo de exportar personalizado, o déjelo en blanco para generar un nombre definido por el sistema.
-
Si se ha añadido un prefijo de clave de traducción al cargar el archivo, Seleccionar esta opción en la pestaña para eliminar el prefijo de los nombres de las clave de traducción exportar:
-
Introduzca el prefijo para descargar todas las clave, y eliminar el prefijo especificado cuando sea posible.
Importante
Esto puede Crear nombres de clave duplicar si otras clave comparten el mismo nombre después de eliminar el prefijo.
-
Si es necesario, Seleccionar para descargar solo las clave de traducción que contienen el prefijo especificado, y eliminar el prefijo del archivo descargar.
Esta opción también está disponible en la API y la interfaz CLI.
-
De forma predeterminada, los recursos traducibles se almacenan como claves y valores en lugar de mantener la estructura de archivo original. Esto permite intercambiar formatos de archivo sin estar bloqueado en un formato, así como una agrupación flexible mediante etiquetas.
Algunos marcos de trabajo o configuraciones requieren varios archivos fuente, lo que también requiere una configuración adicional.
Mantener archivos separados
En general, mantenga todas las traducciones para cada idioma en un solo archivo. Esto hace que las descargas de recursos sean más rápidas y robustas. Las traducciones se mantienen organizadas en proyectos, por lo que no se requieren archivos pequeños separados.
Si es necesario mantener los archivos de localización en archivos separados, se puede usar un flujo de trabajo basado en archivos etiquetando las claves al cargar y usando las etiquetas como referencia al descargar las claves traducidas de nuevo a los archivos originales. Las claves pueden llevar varias etiquetas e incluirse en varios archivos, lo que garantiza su reutilización y coherencia. Un flujo de trabajo basado en etiquetas es flexible y permite la reorganización de los recursos de traducción sin tener que cargarlos en los proyectos.
Asigne a las claves nombres únicos en todos los archivos para garantizar un flujo de trabajo fluido. En un enfoque basado en clave-valor, una clave debe tener los mismos valores asignados en cada contexto. Algunos marcos de trabajo permiten el uso de claves no únicas en varios archivos. Algunos formatos, como Symfony, admiten dominios de mensajes. Estos dominios se detectan mediante el nombre del archivo. Las claves no se limitan automáticamente por dominios basados en el nombre del archivo, pero esto puede resolverse usando un prefijo de dominio único para las claves dentro del archivo.
Ejemplo de configuración de CLI
Si trabaja con CLI o conecta un proyecto con un repositorio (por ejemplo, GitHub, GitLab o Bitbucket), realice la configuración de un archivo de configuración para gestionar las cargas y descargas.
Para el ejemplo, un proyecto tiene varios archivos de traducción con nombres semánticos para la localización fuente. Por ejemplo: accounts.en.yml, emails.en.yml etc. Estos nombres semánticos se gestionan a través de etiquetas.
Configure el .phrase.yml para reflejar la organización de los archivos en el proyecto de localización y vincúlelos a las etiquetas en el proyecto Strings incluyendo el marcador de posición de etiqueta en la ruta del archivo:
phrase:
access_token: "3d7e6598d955bfcab104c45c40af1b9459df5692ac4c28a17793"
project_id: "23485c9c5dfb15d85b32d9c5f3d2hl54"
file_format: yml
push:
sources:
- file: ./path/to/locales/<tag>.en.yml
params:
locale_id: "abcd1234cdef1234abcd1234cdef1234"
pull:
targets:
# accounts
- file: ./path/to/locales/accounts.<locale_name>.yml
params:
tags: accounts
# emails
- file: ./path/to/locales/emails.<locale_name>.yml
params:
tags: emails
Importante
Aunque es compatible, por razones de seguridad, no se recomienda almacenar identificadores únicos (token) de acceder dentro del archivo.
Configurar una variable de entorno PHRASE_ACCESS_TOKEN es más seguro.
Las etiquetas de parámetros también se pueden usar en la sección push en lugar de usar el marcador de posición <tag>.
La configuración crea claves con etiquetas basadas en el archivo del que provienen al ejecutar un push o al activar la sincronización desde un repositorio. Al ejecutar pull o activar la exportar al repositorio, agrupa las claves en archivos según sus etiquetas.
Un producto, sitio web o aplicación se traduce a varios idiomas diferentes, pero en algunos casos, la localización no es solo el idioma elegido, sino diferentes versiones dentro de un mismo idioma.
Se requiere una distinción adicional si:
-
Un producto tiene una marca diferente en regiones donde se habla el mismo idioma.
-
Un producto es usado por diferentes clientes que desean usar una solución de etiqueta blanca.
-
Se requieren variantes de idioma como simple, formal o informal.
Localización de un producto estático
Si un producto está completamente desarrollado y rara vez se actualiza, puede existir una versión separada del producto dentro de un proyecto.
-
Si es una única salida o un proyecto a corto plazo:
Crear una rama, realizar el trabajo exclusivamente en esa rama durante la duración del proyecto y Eliminar la rama cuando se Completar.
-
Si es un proyecto a largo plazo:
Mantener un Duplicar del proyecto existente. Esto permite la invitación y el trabajo con clientes en la misma organización al proporcionar acceso solo a su(s) proyecto(s), dejando otros proyectos ocultos para ellos.
Localización de un proyecto con actualizaciones continuas
Si un producto se actualiza constantemente con nuevo contenido (claves), aplicar esas actualizaciones a múltiples proyectos y mantenerlos sincronizados es difícil. Usar idiomas dedicados dentro de un proyecto para mantenerlos.
Códigos de idioma que siguen el estándar ISO (p. ej., en-US) no tienen que ser únicos, por lo que muchas versiones del mismo idioma pueden ser creadas dentro de un proyecto. Distinguir entre regiones, clientes o audiencias usando un nombre de idioma único.
Tras la configuración, cualquier clave recién introducida en la localización predeterminada aparecería como no traducida en los otros idiomas y sería localizada en consecuencia. Si trabaja con un cliente y su(s) propio(s) traductor(es), asígnelos específicamente para que solo puedan Editar sus versiones de idioma actualizando el acceso al idioma en su perfil de usuario o en la gestión de usuarios del proyecto.
Configuración de procesos de localización paralelos con trabajos y flujos de trabajo de revisión dentro del mismo proyecto. Esta flexibilidad también se extiende a la carga y descarga de archivos de idioma o procesos automatizados a través de API.