Reenvío este correo de Keko, que non pasou os filtros polos anexos que contiña, e que me parece que contén información de interese. Para que non se perda se algúń dos moderadores da lista purga a mensaxe.
A memoria da que fala, xa está aquí subida por Leandro http://trasno.net/ficheiros/upload/memorias/TM_Netbeans_7.0.tmx.zip ---------- Forwarded message ---------- From: Enrique Estévez Fernández <e...@keko.me> Date: 2012/5/28 Subject: Crear tmx alineando textos (tmx de netbeans desde os ficheiros en-us e gl) Boas. Só vos envío o correo a vos porque ao mellor non procede envialo a rolda e ademais como leva anexos pode quedar retido. Sobre todo a tmx de netbeans, que ocupa 5 megas. Se o vedes convinte, volvo a envialo a rolda, pero sen anexar a tmx de NetBeans, que xa estaría colgada por Leandro na wiki de Trasno, se procede. Veño de crear a tmx da última tradución que se tiña feito de NetBeans, a versión 7.0, que non tiñamos xa que as últimas versións se traducían nun aplicativo en liña (http://translate.sun.com/opencti/), que os de Oracle decidiron pechar fai uns meses. O importante deste correo é o uso de OmegaT para facer tmx alineando textos e a xeración da tmx da tradución da versión 7.0 do NetBeans. Explico todo o proceso, por se pode interesar. E seguramente se poida facer mellor, pero un non controla case nada nin de sistemas de control de versións (hg) e scripting na liña de ordes. É un correo moi longo, se non che interesa, mellor que desistas, ou que vaias a parte concreta que queres do mesmo. Primeiro hai que facerse cos ficheiros de orixe, os en_US e despois coas traducións, gl_ES, pero precisamos os concretos desas versións. Eu non os atopei pero creo que puiden chegar a eles extraendo as ramas do repositorio que mantén todo. Leva moito tempo clonar os repositorios de NetBeans. Nesta páxina web, http://wiki.netbeans.org/List_Of_Repositories, dinos como está a estrutura de repositorios de NetBeans. Eu entendo que a versión 7.0 (releases70), que é a última que traducimos, está en: http://hg.netbeans.org/releases. A expliación dada a continuación, parte de que traballo no cartafol chamado code no meu home. 1. Clonar o repositorio NetBeans de releases, que contén todas as que levan sacado kike@galiza:~/code$ hg clone http://hg.netbeans.org/releases netbeans-releases Isto lévalle moito tempo, polo menos no meu caso. Falamos de máis de 6 horas. 2. Clonar o repositorio de l10n das versións. Tamén lle leva tempo, media hora ou así. $ cd netbeans-releases kike@galiza:~/code/netbeans-releases$ hg clone http://hg.netbeans.org/releases/l10n 3. Listar as ramas que hai nese repositorio ou foron creadas kike@galiza:~/code/netbeans-releases$ hg branches Se subimos polas ramas, vemos que hai unha chamada release70_fixes. Esta vai ser a que clonemos, que é a que nos interesa. 4. Clonar a rama seleccionada noutro repositorio. $ cd .. kike@galiza:~/code$ hg clone -b release70_fixes netbeans-releases release70 Isto lévalle moito. Pero debe crear un repositorio cos datos da versión 7.0 de NetBeans, extraídos do repositorio releases que clonamos a primeira vez, para un novo repositorio que levará o nome de release70. Falamos dunhas catro ou cinco horas. 5. Buscar no repositorio l10n que clonamos antes, a rama que coincida coa que xa clonamos de código fonte,a 7.0 $ cd netbeans-releases/l10n/ kike@galiza:~/code/netbeans-releases/l10n$ hg branches A rama que coincide é a release70, xa que non existe unha rama release70_fixes para as traducións. 6. Clonar esa rama dentro do repositorio release70 clonado anteriormente. $ cd .. kike@galiza:~/code/netbeans-releases$ hg clone -b release70 l10n ../release70/l10n Isto tamén lle vai levar o seu tempo. Pero ao rematar xa teríamos o repositorio preparado con todo para crear a versión de NetBeans 7.0 do seu momento e na que poderemos obter o código fonte e as cadeas que foron traducidas. -- Nota: Algúns dos pasos que veñen agora poderían facerse a medias, pero mellor facelos completos, así podes ver que todo vai ben. Estes paso xa foron documentados aquí: http://www.usc.es/osl/wiki/index.php/Translation_netbeans. O paso 1 e 4, foi o que se fixo ata o de agora, porque non había forma de clonar directamente esas versións, xa que non están accesíbels os repositorios como estaba no seu momento. Ou iso penso que foi o que fixen e funcionou. 7. Compilar o código fonte desta versión. Vaille levar o seu tempo e descargase binarios da Internet. Falamos de horas, non sei cantas. $ cd ../release70/ kike@galiza:~/code/release70$ ant 8. Construír o nbms. Tamén lle vai levar o seu tempo. Non o calculei, deixeino soíño. kike@galiza:~/code/release70$ ant build-nbms 9. Xerar o kit l10n, os ficheiros en_US para traducir. $ ant l10n-kit Os ficheiros son xerados en release70 (onde estamos agora), dentro do cartafol nbbuild nun ficheiro comprimido co nome l10n.zip. A ruta sería release70/nbbuild/l10n.zip. Os ficheiros que hai dentro deste cartafol son o que vamos alinear coas traducións para xerar a memoria de tradución. 10. Localizar os ficheiros xa traducidos e que foron enviados ao proxecto no seu momento. Estamos en release70 kike@galiza:~/code/release70$ $ cd l10n/src/ kike@galiza:~/code/release70/l10n/src$ Ahí hai un cartafol co nome do código do noso idioma: gl_ES -- Nota: Xa temos os ficheiros en inglés e traducidos. Agora comeza a explicación para alinear e xerar unha tmx con OmegaT. Non se vai explicar como instalar OmegaT. Dase por suposto que está instalado, xa que simplemente hai que descargar o ficheiro comprimido do aplicativo, descomprimilo e executalo. Suponse que OmegaT foi descargado no cartafol code. 1. Abrir OmegaT e crear un proxecto no cartafol code co nome tmx_netbeans. 2. Descomprimir o ficheiro l10n.zip xerado no proceso anterior, que é onde están os ficheiros en_US do NetBeans, que son do tipo .properties. Estamos no cartafol: kike@galiza:~/code/release70$ $ cd nbbuild/build/ kike@galiza:~/code/release70/nbbuild/build$ unzip l10n.zip -d l10n Isto crea un cartafol l10n con todos os ficheiros que ían no zip. 3. Agora meter eses ficheiros no cartafol source do proxecto creado co omegaT O cartafol do proxecto ten o mesmo nome que o proxecto. Dentro dese cartafol hai varios cartafoles. Vamos meter os ficheiros descomprimidos no paso anterior no cartafol source. Estamos en: kike@galiza:~/code/release70/nbbuild/build$ $ cp -r l10n/* ../../../tmx_netbeans/source/ 4. Agora vamos a copiar os ficheiros traducidos no cartafol code, e mantemolos no cartafol gl_ES Estamos en: kike@galiza:~/code/release70/nbbuild/build$ Vamos a src onde están os cartafoles coas traducións para cada idioma $ cd ../../l10n/src/ Agora estamos en: kike@galiza:~/code/release70/l10n/src$ Agora copiamos o cartafol gl_ES dentro do cartafol code, para facilitar o proceso de alineado despois e poder preparalos. $ cp -r gl_ES/ ../../../ 5. Agora preparamos os ficheiros traducidos para poder alinealos cos de en_US. En principio non debería facer falta nada, pero cando tento alinealos, non fai nada. Despois de facer probas, comprobei que se os ficheiros non levan engadido o código do idioma, si que funciona. Así que vamos a renomear os ficheiros traducidos de *_gl_ES.properties a *.properties. No manual de OmegaT parece que di que é necesario que leven o código de idioma, pero a min non me traballou desa maneira. Situamonos no cartafol gl_ES $ cd ../../../gl_ES/ Renomeamos os ficheiros: kike@galiza:~/code/gl_ES$ find . -name "*.properties" -exec rename 's/\_gl_ES.properties/\.properties/' {} \; 6. Agora temos que eliminar os ficheiros .html e se se quere os cartafoles valeiros de ambos ficheiros, dos que están en source e dos que están no cartafol gl_ES. Debería funcionar igual, pero parece que non vai ou que están mal codificados. Como o que nos interesa é a tmx da interface d NetBeans, borramolos de ambos lados. Eses ficheiros .html deben ser as páxinas de axuda do NetBeans de cada módulo. Hai moi pouco traducido. Situarse dentro do cartafol gl_ES ou source, unha vez en cada e executar as seguintes ordes: $ find . ! -name "*.properties" -exec rm {} \; Esta orde elimina todos os ficheiros que non teñen a extensión .properties que haxa dentro dese cartafol e nos seus subcartafoles. Dentro dos cartafoles que estamos traballando só hai ficheiros .properties (que queremos conservar) e .html (que queremos eliminar). O resto non o elimina, xa que son cartafoles e dá erro. Por eso a continuación, executamos a orde seguinte, para eliminar os cartafoles vacíos. $ find . -type d -empty -exec rmdir {} \; Esta orde elimina os cartafoles vacíos que haxa nese cartafol de forma recursiva. Executala ata que non mostre nada despois da súa execución. 7. Crear a tmx do proxecto. Para elo executase o OmegaT desde a terminal cos seguintes argumentos: Situamonos no cartafol code, xa que ahí temos instalado o OmegaT dentro do cartafol omegat, temos creado o proxecto de OmegT para o NetBeans chamado tmx_netbeans e tamén temos os ficheiros traducidos no cartafol gl_ES. kike@galiza:~/code$ $ java -jar omegat/dist/OmegaT.jar tmx_netbeans/ --mode=console-align --alignDir=gl_ES No meu caso concreto o ficheiro executábel do OmegaT, está dentro do cartafol omegat/dist, o normal é que estea no cartafol omegat sen máis. Dámoslle a ruta do proxecto, que está no cartafol code en tmx_netbeans. Lanzamos o OmegaT no modo de alinear. E dámoslle a ruta dos ficheiros traducidos, que están no cartafol gl_ES. A tmx do proxecto crease dentro do cartafol omegat que hai dentro do proxecto. Leva o nome align.tmx. 8. Limpar a tmx creada. No proceso de creación da tmx, tamén se meten os pares que non foron traducidos. Entón, mediante unha utilidade que se pode atopar na páxina de OmegaT, pódense eliminar as tuplas que sexan iguais no segmento en_US co gl_ES. Chámase TMXCleaner-1.0.RC1.jar, e vouna anexar no correo, porque o outro día non se podía descargar. Estamos en: kike@galiza:~/code$ $ java -jar TMXCleaner-1.0.RC1.jar tmx_netbeans/omegat/align.tmx A utilidade está no cartafol code. Dámoslle a ruta da tmx que queremos limpar, que está no proxecto tmx_netbeans, no cartafol omegat e leva o nome align.tmx. Creanos outra tmx limpa no cartafol que estaba a tmx orixinal co nome align-clean.tmx. Este foi o proceso para obter a tmx de NetBeans da versión 7.0, máis dun ano despois. Curioso cando menos. Anexo a tmx de netbeans. Non creo que aporte moito pero queda para o histórico. No manual de OmegaT que recomendei o outro día, no apartado 6.3 OmegaT in the command line mode, na páxina 15, explicase este modo de execución de OmegaT. Para realizar todo isto vas ter que ter instalado, Java (a min non me funcionou co java-6-openjdk), Ant e Mercurial como mínimo. Por último OmegaT. Saúdos. _______________________________________________ Proxecto mailing list Proxecto@trasno.net http://listas.trasno.net/listinfo/proxecto