Surgeon

Es muy normal, debido al perfeccionamiento y la densidad de los proyectos que uno va desarrollando, mejorar y optimizar dicho desarrollo. Para ello muchas veces adoptamos costumbres que nos facilitan, ayudan y agilizan el trabajo. Concretamente en Android, una de las técnicas que más utilizo con este fin, es partir el archivo strings.xml, que contiene las cadenas de texto presentes en la interfaz de usuario de mis aplicaciones, en otros archivos más pequeños (strings_settings.xml o strings_menu.xml son buenos ejemplos). Con esto consigo tener organizados estas cadenas en secciones más manejables, evitando así tener un archivo con 1000 entradas, donde encontrar algo resulta un tanto angustioso. Esta técnica acarrea un problema importante de cara, precisamente, cuando queremos agilizar el desarrollo. Implica que a la hora de incorporar traducciones en nuestra app, resulte engorroso llevar la cuenta de que strings se han modificado/añadido/borrado.

¿Qué es surgeon?

Es una simple herramienta que se encarga de localizar todos tus archivos con cadenas de texto, los unifica y compara con el resto de traducciones para encontrar las diferencias entre ellos. Finalmente genera un fichero con las cadenas que no existen en los archivos o directorios de internacionalización.

¿Cómo se utiliza?

  • Una vez descargado, edita el archivo config.py con los parámetros de tu proyecto.
  • Y simplemente ejecuta el siguiente comando (deberás tener python instalado):

python surgeon.py

Configuraciones

  • Define la localización del proyecto en PROJECT_PATH.
  • Asigna un modulo en concreto con la constante MODULE_NAME.
  • Acepta flavours.
  • Deberás especificar que prefijo o sufijo utilizan tus archivos strings.
  • También podrás cambiar el nombre del archivo con los resultados.

Descargalo

Surgeon está alojado en Github. Lo puedes conseguir directamente desde el repositorio.