android - texto - strings xml español
Android: Obtener traducciones faltantes para cadenas de recursos (13)
En Android, puede especificar los textos en la configuración regional predeterminada en res/values/strings.xml
. Se pueden agregar traducciones adicionales para nuevos idiomas en res/values-it/strings.xml
(para italiano, por ejemplo). Si una cadena no está traducida, se utiliza la configuración regional predeterminada de reserva.
Actualmente no puedo saber qué cadenas aún necesito traducir (están en values/strings.xml
, pero no en values-$/strings.xml
para todos $ en idiomas ) y cuáles están traducidas, aunque están obsoletas (también lo están en values-$/strings.xml
, pero no en values / strings.xml existe $ en idiomas )
Estoy buscando una herramienta que me dé las traducciones que faltan y la que está obsoleta.
Para ser honesto, no es tan difícil escribir una herramienta de este tipo para la línea de comandos, apenas puedo creer que ya nadie haya hecho esto.
¿Conoces MotoDev Studio para Android? Cuenta con una herramienta de localización. Dentro de esa herramienta, todos los idiomas son columnas y todos los textos son filas. Es muy fácil encontrar traducciones faltantes dentro de esa "hoja de cálculo". La otra forma, encontrar traducciones obsoletas, no es tan fácil.
Construí una herramienta de línea de comandos llamada ams
(para android-missing-strings) que imprime un informe de cada entrada faltante, así como las entradas que aún no aparecen en el archivo base strings.xml.
Está disponible aquí github.com/gubatron/android-missing-strings
ams - Android Missing Strings reporting tool.
Usage:
ams [-l xx[,yy,zz...]] -o <output_file>
Options:
-h --help Print this help
-l --lang <xx> Specify a language or many with comma separated 2-char language codes.
e.g: -l cn (creates report for Chinese strings.xml)
-l cn,it,fr (creates report for Chinese, Italian and French strings.xml files)
If this parameter is ommited, a report with every language file found will be created.
-o --oFile Specify the output file name for the report
Copyright (c) 2014 - The Mit License (MIT)
Authors:
Angel Leon <[email protected]>
Katay Santos <[email protected]>
En Android Studio, analice> Ejecutar inspección por nombre, escriba Siguiente y ejecute inspecciones para los Project Production Files
alcance personalizado.
- Traducción extra
- Traducción incompleta
Esto no es automatizado, pero es muy rápido. En Eclipse, vaya a Ventana-> Mostrar vista-> Otro-> Android-> Explorador de recursos.
Ahora, en la pestaña del Explorador de recursos en la parte inferior (o donde sea que lo hayas movido) mira debajo de Cadena. Cada cadena debe tener el mismo número de versiones si tiene una traducción completa, por lo que puede escanear la lista en unos pocos segundos.
Haga esto para cada proyecto que tiene cadenas.
No supe de esto hasta que localicé, pero sigue siendo útil (como cuando agrego una nueva cadena).
Hay una versión muy mejorada de la herramienta de pelusa Android Dev Kit en Eclipse desde la versión 17 del SDK. Consulte la documentación aquí: Nueva interfaz de usuario de Eclipse Lint
Simplemente haga clic en el elemento "lint" de la barra de herramientas, ejecútelo en su proyecto y luego abra el elemento "no está traducido" que aparecerá para mostrarle cada etiqueta que necesita traducción.
Gracias a satur9nine: esta es una versión actualizada de su respuesta que me llevó a esta.
Interesante pregunta. He escrito un script simple para encontrar recursos duplicados en el proyecto de Android en https://gist.github.com/1133059 . Es feo, lo sé, pero lo reescribiré en unos días y tal vez crearé un proyecto en github. Para ejecutarlo desde la consola:
$scala DuplicatesFinder.scala /path/to/android/project
ACTUALIZAR:
He hecho un proyecto en github https://github.com/4e6/android-localization-helper , tal vez alguien lo encuentre útil
La nueva herramienta oficial de Android Lint te ayuda a detectar este problema y muchos otros: http://tools.android.com/tips/lint
No hay ninguna que yo sepa, estoy favoreciendo la pregunta. :) Sin embargo, como práctica recomendada, primero completo el archivo strings.xml predeterminado y lo traduzco al final. También agrego un pequeño comentario de marcador para especificar el final de la traducción y cualquier nueva cadena se agrega debajo de eso. Esto me ayuda a hacer un seguimiento de los que no están traducidos.
- ACTUALIZACIÓN -
Con la última herramienta ADT para eclipse, puede instalar Lint que se ocupa de todos los problemas relacionados con los duplicados y mucho más con su exhaustivo conjunto de advertencias.
Si está dispuesto a utilizar el sitio web getlocalization.com , es gratuito si está dispuesto a que sus traductores trabajen en su localización públicamente (de lo contrario, debe pagar para que su proyecto sea privado).
Puede usar su complemento Eclipse para importar automáticamente las cadenas de su proyecto de Android: http://getlocalization.github.io/eclipse/
Entonces esta es la interfaz que sus traductores verán cuando realicen la traducción real:
Le recomiendo que haga clic con el botón derecho en la captura de pantalla de arriba para verla en un formato más grande en una pestaña separada. En realidad, está bien pensado y también debería facilitar el trabajo del traductor.
Soy el Gerente de Producto de MOTODEV Studio. Como mencionó @hjw, esta es una característica de MOTODEV Studio llamada "Editor de archivos de localización". Este editor es similar a una hoja de cálculo y le permite ver todas sus cadenas en una vista. Puede editar como una hoja de cálculo o el XML subyacente en la misma vista.
MOTODEV Studio es una versión de marca de Eclipse, por lo que debería funcionar con sus proyectos existentes si utiliza Eclipse. Si prefiere continuar usando la configuración de Eclipse existente, aún puede usar MOTODEV Studio para manejar la edición de los archivos string.xml, siempre y cuando solo una versión pueda tener el espacio de trabajo abierto a la vez.
Si tiene alguna pregunta sobre cómo usarlo, no dude en enviarme un mensaje o publicarlo en nuestros foros de discusión en developer.motorola.com
Sugiero Amanuens que le permiten identificar fácilmente las cadenas no traducidas y las que no coinciden en los archivos maestros y traducidos. Opcionalmente, puede configurarse para mantener automáticamente los archivos de traducción sincronizados con el repositorio. También puede dar a sus traductores acceso al servicio y pueden encontrar un editor web fácil de usar para traducir su aplicación.
También puede usar la pelusa de Android (acceso fácil desde Eclipse). Haga clic derecho en su proyecto -> Herramientas de Android -> Ejecutar Lint. Esto le dará una lista de todas las traducciones que faltan, y también algunos otros errores comunes.
También mostrará que los recursos y cadenas duplicados no están disponibles en la traducción predeterminada.