Publi

  • Creando un plugin epara WordPress: localizar el plugin e insertar traducciones (cuarta parte)

    simterm
    Estoy haciendo un pequeño tutorial de cómo me lo he montado para crear un plugin de WordPress: simterm. Podéis echar un vistazo al plugin desde la página anterior, y probarlo si queréis 🙂

    Esta es la cuarta parte, enfocada a la localización de plugins. Podéis acceder desde aquí a:

    • Primera parte. Introducción y conceptos básicos de plugins de WordPress y algunas manías personales.
    • Segunda parte. Enfocada a la pantalla de configuración de nuestro plugin.
    Leer artículo completo
  • Scripts multilingües en bash con gettext / Traducciones en scripts


    Hace tiempo, empecé un proyecto en el que comparto algunos scripts que utilizo para hacerme la vida un poco más fácil. En esta colección, encontramos algunos scripts que ejecutaremos desde consola, y otros que, suelo tenerlos vinculados a una tecla rápida para ejecutarlos más rápidamente. El caso es que, los mensajes que se muestran en pantalla a través de diálogos suelo ponerlos en español, pero me gusta compartirlos con el mundo, y comprendo que cada uno quiera verlo en su idioma.… Leer artículo completo

  • 5 consejos para internacionalizar nuestros programas con gettext [PHP]

    Hace unos meses publicaba un artículo para hacer traducciones con gettext en nuestras aplicaciones, ahora vamos a ampliar aquello con algunos consejos útiles y trucos.

    1 – Conocer globalmente la locale

    No todo es gettext(), que usaremos para mensajes de la interfaz, puede que incluyamos textos desde base de datos y necesitemos tener a mano en todo momento esa locale, además de mucha más información sobre nuestro proyecto. Para ello, una buena forma es crear una clase estática que almacene esa información.… Leer artículo completo

  • Traducciones para nuestras aplicaciones C/C++ con gettext

    4929705941_5cc3aca475_oHace un tiempo publiqué cómo traducir nuestras aplicaciones PHP con gettext, ahora le toca el turno a nuestras aplicaciones en C.

    El procedimiento es muy parecido, por lo que no voy a especificar la creación de ficheros po y mo en este artículo, os remito al anterior.

    El código fuente no es que varíe demasiado de PHP pero es interesante echarle un ojo. Si queremos traducir este programa:

    1
    2
    3
    4
    5
    6
    7
    8
    #include <stdio.h>

    int main(int argc, char *argv[])
    {
      printf("Hello world\n");
     
      return 0;
    }

    Haremos algo parecido a lo siguiente:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    #include <stdio.h>
    #include <libintl.h>
    #include <locale.h>

    int main(int argc, char *argv[])
    {
      char *locale="fr_FR.UTF-8";
      setlocale(LC_MESSAGES, locale);
      bindtextdomain("miProyecto", "locale/" );
      textdomain("miProyecto");

      printf(gettext("Hello world"));
     
      return 0;
    }

    Ahora, si tenemos el archivo locale/fr_FR/LC_MESSAGES/miProyecto.mo dentro, veremos el mensaje en francés.… Leer artículo completo

  • Traducciones con gettext para nuestros proyectos en PHP


    Es importante a la hora de realizar un proyecto que este pueda estar disponible en varios idiomas sin que sea muy dolorosa la traducción, es decir, lo deseable es que nuestra aplicación tenga la posibilidad de ser traducida a varios idiomas sin tocar el código fuente y que alguien no experto pueda introducir/modificar traducciones en nuestro proyecto (en el caso de un proyecto libre es importante que otras personas puedan colaborar en esto para poder llegar a más público).… Leer artículo completo

  • Obtener una lista de las localizaciones instaladas en el sistema desde PHP y Java [locales]

    En linuz, para obtener todas las locales, o localizaciones instaladas en el sistema, podemos hacerlo con el comando locale -a:

    $ locale -a
    C
    C.UTF-8
    en_AG
    en_AG.utf8
    en_AU.utf8
    en_BW.utf8
    en_CA.utf8
    en_DK.utf8
    en_GB.utf8
    en_HK.utf8
    en_IE.utf8
    en_IN
    en_IN.utf8
    en_NG
    en_NG.utf8
    en_NZ.utf8
    en_PH.utf8
    en_SG.utf8
    en_US.utf8
    en_ZA.utf8
    en_ZM
    en_ZM.utf8
    en_ZW.utf8
    es_AR.utf8
    es_BO.utf8
    es_CL.utf8
    es_CO.utf8
    es_CR.utf8
    es_DO.utf8
    es_EC.utf8
    es_ES
    es_ES.iso88591
    es_ES.utf8
    es_GT.utf8
    es_HN.utf8
    es_MX.utf8
    es_NI.utf8
    es_PA.utf8
    es_PE.utf8
    es_PR.utf8
    es_PY.utf8
    es_SV.utf8
    es_US.utf8
    es_UY.utf8
    es_VE.utf8
    POSIX
    zh_CN.utf8
    zh_SG.utf8

    Ahora bien, podemos usar este comando dentro de PHP para obtener la lista y añadir a la lista información como el idioma y el país usando una lista de países e idiomas.… Leer artículo completo