Difference between revisions of "Introdución á tradución de software"

From Proxecto Trasno
(Conceptos previos)
(O Inglés como lingua da computación)
Line 1: Line 1:
 
== Conceptos previos ==
 
== Conceptos previos ==
 
=== O Inglés como lingua da computación ===
 
=== O Inglés como lingua da computación ===
O fin do período colonial e o resultado das grandes guerras do século XX fixeron que a lingua de uso internacional, que ata ven entrado o pasado século fora o francés, pasara a ser o inglés, pois os Estados Unidos de Norte América colócanse coma a nova gran potencia mundial. Se a finais do século XIX e comezos do XX os primeiros grandes avances na enxeñaría e informática comezaron no mundo anglo-xermano, despois da primeira gran guerra os avances prodúcense no lado dos EUA. O resultado da segunda guerra mundial, que pon na quebra as economías europeas, e o resultado da guerra fría, permítenlle aos EUA consolidarse coma un potencia tecnolóxica. Con isto, non é de estrañar que o inglés sexa a lingua estándar na computación.  
+
O fin do [http://en.wikipedia.org/wiki/Second_European_colonization_wave_(19th_century-20th_century)| período colonial] e o resultado das [http://en.wikipedia.org/wiki/World_war1 grandes guerras do século XX] fixeron que a lingua de uso internacional, que ata ven entrado o pasado século fora o francés, pasara a ser o inglés, pois os Estados Unidos de Norte América colócanse coma a nova gran potencia mundial. Se a finais do século XIX e comezos do XX os primeiros grandes [http://en.wikipedia.org/wiki/History_of_computing_hardware| avances na enxeñaría e informática] comezaron no mundo anglo-xermano, despois da primeira gran guerra os avances prodúcense no lado dos EUA. O resultado da segunda guerra mundial, que pon na quebra as economías europeas, e o resultado da guerra fría, permítenlle aos EUA consolidarse coma un potencia tecnolóxica. Con isto, non é de estrañar que o inglés sexa a lingua estándar na computación.
  
 
=== Internacionalización e localización ===
 
=== Internacionalización e localización ===

Revision as of 16:22, 27 December 2009

Conceptos previos

O Inglés como lingua da computación

O fin do período colonial e o resultado das grandes guerras do século XX fixeron que a lingua de uso internacional, que ata ven entrado o pasado século fora o francés, pasara a ser o inglés, pois os Estados Unidos de Norte América colócanse coma a nova gran potencia mundial. Se a finais do século XIX e comezos do XX os primeiros grandes avances na enxeñaría e informática comezaron no mundo anglo-xermano, despois da primeira gran guerra os avances prodúcense no lado dos EUA. O resultado da segunda guerra mundial, que pon na quebra as economías europeas, e o resultado da guerra fría, permítenlle aos EUA consolidarse coma un potencia tecnolóxica. Con isto, non é de estrañar que o inglés sexa a lingua estándar na computación.

Internacionalización e localización

As aplicacións informáticas son desenvolvidas adaptadas cultural e lingüisticamente ao inglés americano; dende o texto que o usuario ve e os caracteres dese texto, as datas, o fuso horario, os formatos numéricos, os nomes, as direccións, ás unidades de medida... Por isto existe a necesidade de adaptar cada aplicación informática ás realidades culturais e lingüísticas de cada rexión. As aplicacións non adaptadas, non localizadas, impiden o uso desa aplicación a persoas que non coñecen o inglés e este é a razón fundamental pola que se localiza.

O proceso de internacionalización (que se abrevia como i18n) é o proceso polo cal se adapta unha aplicación para que permita o emprego doutras linguas, tipografías ou outras convencións locais.

O proceso de axustar o software xa internacionalizado a unha lingua ou rexión cultural concreta chámase localización e abreviase como l10n. A i18n das aplicacións é un requisito previo á localización. Por medio da localización créanse versión da aplicación sen necesidade de cambiar o código fonte da aplicación. Isto conséguese externalizando as mensaxes de texto ou imaxes específicas que logo os localizadores se encargarán de cambialos segundo a lingua ou os convenios culturais de cada rexión.

O proceso de globalización (g11n) emprégase habitualmente para englobar os procesos de internacionalización e localización. O proceso abrangue ao deseño, implementación e localización. Nalgún momento dado empregouse a abreviatura g11n para referirse á galeguización, mais a coincidencia da abreviatura coa de globalization fai desaconsellable o seu emprego.


O "locale"

As linguas están recollidas nunha serie de estándares internacionais co fin de identificalas. A serie ISO 639 recolle asignan códigos identificacións cada lingua descrita. Estes códigos son empregados en varios ámbitos informáticos.

A ISO 639 consiste da 639-1, 639-2, 639-3 e 639-5. Foron redactados en diferentes momentos con variacións debido a unha ou outra necesidade, como a de ampliar sistema de codificación ata poder acoller as arredor de 6000 linguas vivas que se estima existen, ademais de linguas extintas e artificias. A ISO 639 identifica a cada idioma cun código de dúas letras mentres que a 639-2 define un código de tres letras. Así o galego recibe os identificadores gl e glg na 639-1 e 639-2, respectivamente. Outros exemplos importantes a ter en conta son:

ISO 639-1 ISO 639-2 Name
gl glg Galician
pt por Portuguese
es spa Spanish
en eng English

Un "locale" denota unha lingua específica xunto cos convenios culturais de data, moeda, formato de número.... Explicado máis formalmente, o locale é o subconxunto das variables ambientais que teñen impacto nun usuario e que dependen de convencións lingüísticas ou culturais de cada rexión. O locale inclúe o seguinte:

  1. Lingua
  2. Formatos numéricos
  3. Convencións de data e hora
  4. Fusos horarios
  5. Cambios de horario de verán (de aforro enerxético)
  6. Moeda

É fácil percibir que non abonda con especificar unha lingua para identificar un locale. Un exemplo atopámolo coas diferenzas entre o inglés británico e o americano ou entre o portugués continental e o brasileiro. Inda que non existan necesariamente diferenzas dialectais, si existen diferenzas, por exemplo, por razóns xeográficas que fan que haxa que adaptar datas, fusos horarios ou similares. Así que ademais da lingua é necesario especificar o país ou rexión de fala da lingua.

O locale galego é gl_ES, onde ES é o identificador do estado español, que é de onde deriva o noso sistema de semana, data, hora.... Outros locales a ter presentes son:

Lingua locale
galego gl_ES
inglés americano en_US
inglés británico en_GB
portugués continental pt_ES
portugués brasileiro pt_BR
español peninsular es_ES

O locale en_US actúa habitualmente como predefinido na maioría dos sistemas, pois é o de orixe.

Cada lingua ten ademais un sistema de escritura que pode variar. As linguas poden ter sistemas alfabéticos, coas súas diferentes tipografías, ou sistemas iconográficos pero os ordenadores traballan con díxitos. Con isto, cada carácter tipográfico leva un número asociado nun estándar de representación específico. Esta asociación chámase código de caracteres. Códigos de caracteres (eng. charset) hai múltiples, coma o ASCII ou a ISO-8859-1. O sistema Unicode é un estándar industrial de representación de códigos de caracteres deseñado para acoller a todos os símbolos e textos posibles te todos os sistemas de escritura do mundo. O Unicode Transformation Format (UTF) é de amplo uso en programas internacionalizados. Os formatos UTF-8 e UTF-16 son probablemente os máis empregados. O UTF-8 recolle correctamente o código de caracteres do galego pois é compatible coas escrituras latinas e o ASCII.

FLuxo da i18n e Gettext

http://www.linuxselfhelp.com/gnu/gettext/html_chapter/gettext_1.html

Original C Sources ---> PO mode ---> Marked C Sources ---.

                                                        |
             .---------<--- GNU gettext Library         |

.--- make <---+ | | `---------<--------------------+-----------' | | | .-----<--- PACKAGE.pot <--- xgettext <---' .---<--- PO Compendium | | | ^ | | `---. | | `---. +---> PO mode ---. | +----> msgmerge ------> LANG.pox --->--------' | | .---' | | | | | `-------------<---------------. | | +--- LANG.po <--- New LANG.pox <----' | .--- LANG.gmo <--- msgfmt <---' | | | `---> install ---> /.../LANG/PACKAGE.mo ---. | +---> "Hello world!" `-------> install ---> /.../bin/PROGRAM -------'

Aplicacións para a tradución

Editores de texto vs ferramentas especializadas

Aplicacións de escritorio

  • Poedit
  • Virtaal
  • Lokalize

Aplicacións en liña

  • Pootle