Fitxers d'idioma


Des de la versió 1.04.0.0001 i posteriors, l'Easy Code utilitza cadenes de text Unicode i us permet treballar amb pràcticament tots els idiomes (vegeu Suport multillengua). Els fitxers d'idioma han de tenir l'extensió lge i s'han de tobar a la subcarpeta Language, dins la carpeta principal de l'Easy Code. Tots els fitxers .lge que hi hagi en aquesta subcarpeta seran llistats a la finestra de Configuració per tal que pugueu triar-ne un per l'Easy Code. Quan funciona en Windows 95/98/ME, les llengües que tenen més d'un byte per caràcter no apareixen a la llista de llengües disponibles, atès que no es poden mostrar correctament.

Un fitxer d'idioma ha d'estar en format Unicode (2 bytes per caràcter) i té l'aparença següent:

;--------------------------------------------------------------------------------------------------
Lang=Català (Catalunya) ; Autor: Ramon Sala (asm@easycode.cat)
;--------------------------------------------------------------------------------------------------

[Strings]
10000=Entorn de desenvolupament d'interfície visual
10001=A&ccelerador:
10002=Habilita la s&intaxi de color
10003=A&fegeix
...
...



Els fitxers d'idioma han de seguir unes normes per tal que funcionin correctament:

  1 - Tots els comentaris han d'anar precedits per un punt i coma (";")
  2 - Podeu afegir tants comentaris com vulgueu abans de la paraula clau [Strings].
  3 - La paraula clau Lang ha d'existir (abans de la paraula clau [Strings]) i indica el nom de l'idioma, p.e. Català (Illes Balears).
  4 - La paraula clau [Strings] ha d'existir i indica el començament de les cadenes de text.
  5 - Cada cadena de text ha d'anar precedida per el número que identifica la cadena i el separador "=".
  6 - Després de la paraula clau [Strings] no hi ha d'haver altra cosa més que cadenes de text.


Quan es tria un idioma a la finestra de Configuració, el text que hi ha després de la paraula clau Lang, i abans del punt i coma, serà el que es mostrarà com a idioma escollit, i les cadenes de text (de la secció [Strings]) seran les que utilitzarà l'Easy Code. Per tant, per a fer un fitxer d'idioma, per exemple el francès, obrim el fitxer ECCatCA.lge amb la "Llibreta" i fem el següent:

  1 - Canviar el nom de l'idioma i de l'autor (noteu el punt i coma separant el nom i el correu electrònic de l'autor):
    ;--------------------------------------------------------------------------------------------------------
    Lang=Français (France)  ; Autor: Nom Cognom (correu@electrònic)
    ;--------------------------------------------------------------------------------------------------------


  2 - Traduir totes les cadenes de text al nou idioma sense modificar-ne el número i tenint present les consideracions comentades més avall.

  3 - Desar el fitxer modificat (com a text UNICODE) amb un altre nom (vegeu NOMS DE FITXER D'IDIOMA) i posar-lo a la subcarpeta Language de l'Easy Code.


Un "ampersand" ("&") indica que el caràcter que ve immediatament a continuació es mostrarà subratllat. Com que el text és traduït, podeu modificar la posició dels "ampersands" en funció de la traducció, però només per aquelles cadenes que originalment en tenien un. És a dir, no heu de posar-li un "ampersand" a una cadena que no en tenia cap al fitxer original.

Les combinacions de caràcters que consisteixen en una barra invertida ("\"), seguida per una lletra o el número zero, s'anomenen "seqüències d'escapament". Per exemple, per indicar una barra invertida n'heu d'escriure dues ("\\"), com ho farieu en llenguatge C. L'Easy Code només reconeix les següents seqüències d'escapament (les lletres han de ser minúscules):

  \0  NUL (caràcter UNICODE 0). Noteu el número "0" després de la barra invertida, no la "O" majúscula.
  \a  Alerta (caràcter UNICODE 7)
  \b  "Backspace" (caràcter UNICODE 8)
  \f  Avanç de pàgina (caràcter UNICODE 12)
  \n  Avanç de línia (caràcter UNICODE 10)
  \r  Retorn de carro (caràcter UNICODE 13)
  \t  Tabulació horitzontal (caràcter UNICODE 9)
  \v  Tabulació vertical (caràcter UNICODE 11)
  \"  Cometes dobles (caràcter UNICODE 34)
  \'  Cometes simples o apòstrof (caràcter UNICODE 39)
  \?  Signe d'interrogació (caràcter UNICODE 63)
  \\  Barra invertida (caràcter UNICODE 92)


Si us plau preneu la precaució de traduir les cadenes de text respectant tots els espais en blanc, les seqüències d'escapament i altres caràcters que no siguin lletres, sense modificar el número de la cadena ni el separador "=". Altrament, l'Easy Code pot mostrar textos incorrectes, o fins i tot comportar-se de manera estranya. Si falten una o més cadenes, el programa carrega l'idioma predeterminat (anglès).


NOMS DE FITXER D'IDIOMA

Qualsevol nom pot ser vàlid per a un fitxer d'idioma, sempre que tingui l'extensió "lge" i un màxim de 30 caràcters. Tot i així, caldria que seguís la convenció següent:

  - Els dos primers caràcters indentifiquen l'aplicació que utilitza el fitxer (EC per a l'Easy Code).
  - Els tres següents caràcters per al nom del idioma (Eng per l'anglès, Cat pel català, etc.).
  - Dos (o tres) caràcters finals per al nom del país o la regió (UK per al Regne Uint, US per als Estats Units, etc.).
  - Finalment l'extensió ".lge", per tal que sigui un fitxer d'idioma vàlid.
  - Recordeu també que el fitxer ha de ser desat en format UNICODE.

Per tant, per un fitxer traduït al francès de França, el nom addient seria ECFraFR.lge, mentre que ECFraCA.lge significaria francès del Canadà.


OBSERVACIONS: L'Easy Code es distribueix amb alguns fitxers d'idioma que he traduït jo personalment. Si us plau, perdoneu-me si trobeu algun error, o una sintaxi inapropiada, i feu-m'ho saber per tal que ho pugui corregir immediatament. D'aquesta manera, estarà a punt per a properes versions de l'Easy Code.


IMPORTANT: Els fitxers d'idioma han d'estar desats en format UNICODE (UTF-16) que utilitzi 16 bits per caràcter (no "UTF-8" ni "Unicode big endian"), altrament no funcionaran. Podeu utilitzar l'aplicació "Llibreta" (només Windows NT i posteriors) i desar els fitxers d'idioma com a text Unicode.


NOTA: Si traduïu un fitxer a qualsevol altre idioma, si us plau envieu-me'l. Estaré encantat d'incloure'l a les properes versions de l'Easy Code.