Difference between revisions of "Gettext izar en Ruby on Rails (RoR)"
(Nova páxina: "'''''Ruby on Rails''''' é un contorno feito para traballar en inglés. O problema chega cando o noso cliente só fala galego (ou zulú) e quere o aplicativo, como é lóxico, no seu…") |
m |
||
Line 1: | Line 1: | ||
'''''Ruby on Rails''''' é un contorno feito para traballar en inglés. O problema chega cando o noso cliente só fala galego (ou zulú) e quere o aplicativo, como é lóxico, no seu propio idioma. | '''''Ruby on Rails''''' é un contorno feito para traballar en inglés. O problema chega cando o noso cliente só fala galego (ou zulú) e quere o aplicativo, como é lóxico, no seu propio idioma. | ||
− | E agora como traducimos as datas? E os formatos de moeda? Preguntas como estas xa teñen solución. Imos utilizar [http://es.wikipedia.org/wiki/Gettext | + | E agora como traducimos as datas? E os formatos de moeda? Preguntas como estas xa teñen solución. Imos utilizar [http://es.wikipedia.org/wiki/Gettext Gettext], a biblioteca GNU de localización de software por excelencia, e [http://rubyforge.org/projects/gettextlocalize|Gettext Localize], o plugin escrito por ''Ramon Salvadó'', ''Miquel Ibero'' e ''Pau Colomer'' que nos permitirá manexar as funcións de '''Gettext''' desde o noso aplicativo '''RoR'''. |
Line 10: | Line 10: | ||
===Instalación do engadido ''Gettext Localize''=== | ===Instalación do engadido ''Gettext Localize''=== | ||
− | A continuación, instalamos o engadido '''Gettext Localize''' no noso proxecto via [http://github.com/ | + | A continuación, instalamos o engadido '''Gettext Localize''' no noso proxecto via [http://github.com/ github]: |
git clone git://github.com/rsalvado/gettext_localize.git vendor/plugins/gettext_localize | git clone git://github.com/rsalvado/gettext_localize.git vendor/plugins/gettext_localize | ||
Agora temos que localizar todo o texto que queremos que sexa traducible e marcalo coa seguinte sintaxe: | Agora temos que localizar todo o texto que queremos que sexa traducible e marcalo coa seguinte sintaxe: | ||
Line 28: | Line 28: | ||
===Xerar o binario MO=== | ===Xerar o binario MO=== | ||
− | Unha vez fixemos as traducións correspondentes co noso editor preferido (podemos facelo con [http://www.poedit.net/ | + | Unha vez fixemos as traducións correspondentes co noso editor preferido (podemos facelo con [http://www.poedit.net/ Poedit] ou con calquera outro como [http://api.kde.org/4.x-api/kdesdk-apidocs/lokalize/html/ Lokalize] ou [http://projects.gnome.org/gtranslator/ Gtranslator] etc...), imos de novo ao terminal e escribimos: |
rake gettext:makemo | rake gettext:makemo | ||
Latest revision as of 15:45, 8 October 2010
Ruby on Rails é un contorno feito para traballar en inglés. O problema chega cando o noso cliente só fala galego (ou zulú) e quere o aplicativo, como é lóxico, no seu propio idioma.
E agora como traducimos as datas? E os formatos de moeda? Preguntas como estas xa teñen solución. Imos utilizar Gettext, a biblioteca GNU de localización de software por excelencia, e Localize, o plugin escrito por Ramon Salvadó, Miquel Ibero e Pau Colomer que nos permitirá manexar as funcións de Gettext desde o noso aplicativo RoR.
Contents
Instalación da xema Gettext[edit]
Pasemos á acción. O primeiro é instalar a xema Gettext:
sudo gem install gettext
Instalación do engadido Gettext Localize[edit]
A continuación, instalamos o engadido Gettext Localize no noso proxecto via github:
git clone git://github.com/rsalvado/gettext_localize.git vendor/plugins/gettext_localize
Agora temos que localizar todo o texto que queremos que sexa traducible e marcalo coa seguinte sintaxe:
_("text to translate")
Xerar a plantilla POT[edit]
Agora temos que xerar o fichero POT, o modelo base a partir da cal poderanse realizar todas as traducións. Imos ao terminal e escribimos:
rake gettext:updatepo
Si todo foi ben, veremos un novo cartafol no noso aplicativo co fichero POT dentro del:
po/nome_aplicativo.pot.
Xerar o ficheiro de tradución PO[edit]
Dentro dese cartafol temos que crear un ficheiro po/lang1/nome_aplicativo.po para cada tradución, onde lang1 é o ISO do idioma destino. Por exemplo, para a nosa tradución ao galego, o ficheiro será po/gl/nome_aplicativo.po. Para a tradución ao alemán o fichero será po/de/nome_aplicativo.po. E así sucesivamente.
Xerar o binario MO[edit]
Unha vez fixemos as traducións correspondentes co noso editor preferido (podemos facelo con Poedit ou con calquera outro como Lokalize ou Gtranslator etc...), imos de novo ao terminal e escribimos:
rake gettext:makemo
E iso é todo.
Gettext Localize foi probado cos seguintes idiomas: galego, catalán, español, inglés, francés e alemán. Para configurar novos idiomas, cambiar a configuración predeterminada, etc..., consultaremos a documentación que vén co plugin.