Traducir el IDE Code::Blocks

¿Por qué?

En el foro de Code::Blocks existe una opinión bastante extendida de que no sólo no es necesario, sino que es poco práctico traducir herramientas de desarrollo a idiomas diferentes del inglés.

Esta opinión se basa, sobre todo, en que como toda la documentación de nuevas aplicaciones se hace en inglés, y la mayor parte de la que existe sobre librerías y herramientas, también está en ese idioma; trabajar con una versión traducida del IDE puede requerir mayor esfuerzo, al tener que estar cambiando continuamente de idioma.

Ni que decir tiene que, al menos en lo que a mi respecta, no estoy de acuerdo en absoluto.

No sólo porque los nuevos programadores se encuentran con que a los problemas de aprender un lenguaje de programación, además han de sumar los de tener que trabajar con programas en un idioma que les resulte poco familiar.

Bastante duro es aprender C++ como para encima tener que aprenderlo al mismo tiempo que el inglés...

Pero es que también estoy en desacuerdo con que el inglés deba ser el lenguaje oficial de la programación. En mi opinión, es hora de que los programadores de otros paises tomen algo de su propia medicina... :-D

Este documento incluye las instrucciones para instalar un fichero de idioma adicional para Code::Blocks.

Condiciones previas

Primero, necesitamos tener instalado Code::Blocks, por supuesto. Después, necesitamos conseguir el fichero con las traducciones de las cadenas literales.

Esta segunda parte es la más laboriosa, ya que se han utilizado herramientas estándar para crear los ficheros de traducción, obtener el fichero que necesitamos no es tan sencillo como descargarlo de Internet y copiarlo.

Ficheros necesarios

Code::Blocks dispone de una página Wiki de ayuda, en este enlace están las instrucciones para cualquier tema realcionado con la internacionalización del IDE, desde todo lo necesario para crear tus propias traducciones hasta el acceso a traducciones ya realizadas y el proceso para instalarlas.

Nosotros nos vamos a limitar a instalar una de las traducciones ya hechas.

Lo primero es localizar el fichero con las cadenas traducidas desde esta página:

launchpad.net

En esa página elegimos el idioma que deseemos, en este caso "spanish", y nos mostrará la página con el estado de traducción actual. En este sitio incluso podemos proponer nuevas versiones para los textos traducidos.
Español

De todos modos, lo que aquí nos interesa es la opción de descargar (download translation).

Se nos mostrará otra página en la que podremos elegir el formato (format) del fichero a descargar: "MO" o "PO". La versión "PO" es la editable, y para poder editarla necesitaremos instalar el programa adecuado "Poedit". La que nos interesa es la versión "MO", la seleccionamos y pulsamos en "Recuest download".

Esto no descargará el fichero, sólo cursa una petición de descarga. Si no tienes una cuenta, tendrás que crear una. Pasado un tiempo recibirás un mensaje de correo con el enlace para descargar el fichero.

Instalación del fichero MO

Esta parte es más sencilla.

  1. En Windows, localizamos en nuestro disco duro la carpeta donde tenemos instalado Code::Blocks (probablemente en "Archivos de programa" o en "Archivos de program (X86)". A partir de ahora llamaremos a esa carpeta "AdP".
  2. En Linux, estará en la carpeta "/usr".
  3. En cualquier caso, localizamos la carpeta "locale". En Windows será "AdP\CodeBlocks\share\CodeBlocks\locale", en Linux algo como "/usr/<algo>/share/locale/".
  4. Si no existe ya, crearemos en ese punto una carpeta con el nombre "es_ES". En Linux hay que crear otra carpeta en esta última, llamada "LC_MESSAGES".
  5. Copiamos el fichero "codeblocks.mo" en esa última carpeta.
  6. Abrimos Code::Blocks, y vamos al menú "Settings->Environment...".
  7. Activamos el icono "View".
  8. Marcamos la opción "Internationalization (needs restart)", y en el desplegable, elegimos "Spanish".
  9. Cerramos el cuadro de diálogo con "OK".
  10. Cerramos Code:Blocks.

La próxima vez que usemos el IDE estará en español (al menos gran parte de los textos).