Le lexique multilangue de GeneWeb

From GeneWeb
Revision as of 22:35, 15 October 2015 by A2 (talk | contribs) (→‎Utilisation du lexique: pas vrai avant la v5)
Jump to navigation Jump to search
150px-Geographylogo svg.png Language:   English • français

Les traductions de GeneWeb sont contenues dans les fichiers lex-utf8.txt et start_utf8.txt du répertoire lang. Le second contient les textes spécifiques de la page d’accueil. Ils contiennent du code HTML et des variables que le démon gwd remplace par des valeurs.

Les fichiers sont en UTF-8 et il est important de conserver ce codage des caractères à l’enregistrement.

Les versions de GeneWeb avant la version 5 utilisent le lexique lexicon.txt en Latin-1.

Le lexique complet peut être affiché dans votre navigateur web à l’adresse http://localhost:2317/mabase?m=LEX.

Les bonnes volontés pour traduire GeneWeb dans les langues non supportées actuellement sont bienvenues.

Code des langues

La langue utilisée dans GeneWeb est modifiable sur la page d’accueil, le choix modifie l’URL des pages en ajoutant la syntaxe ;lang=code_langue où code_langue est le code sur deux lettres de la langue utilisée comme décrit par la variable [!languages] au début de lex_utf8.txt :

af=afrikaans
bg=bulgare
br=breton
ca=catalan
cs=tchèque
da=danois
de=allemand
en=anglais
eo=espéranto
es=espagnol
et=estonien
fi=finnois
fr=français
he=hébreu
is=islandais
it=italien
lv=letton
nl=néerlandais
no=norvégien
oc=occitan
pl=polonais
pt=portugais
pt-br=portugais du Brésil
ro=roumain
ru=russe
sl=slovène
sv=suédois
zh=chinois

Notez que si vous indiquez plusieurs fois ;lang=… dans l’URL, c’est la première rencontrée dans l’URL qui sera effective.

Description du lexique

Le lexique est un fichier textuel qui définit la traduction en plusieurs langues d’un grand nombre de termes utilisés par GeneWeb. La structure du fichier est la suivante :

    terme
l1: terme traduit en langue 1
l2: terme traduit en langue 2

    terme 2
l1: terme 2 traduit en langue 1
    ...

Le terme est traduit pour chaque langue sur une seule ligne. Les entêtes des lignes (l1, l2, …) utilisent les codes à deux lettres des langues.

Par convenance, certains termes sont groupées sur une même ligne et sont alors séparés par des barres obliques /, par exemple :

    son/daughter/child
fr: fils/fille/enfant

Les termes entre parenthèses contiennent des listes de traductions, par exemple :

    (french revolution month)
fr: vendémiaire/brumaire/frimaire/nivôse/pluviôse/ventôse/germinal/floréal/prairial/messidor/thermidor/fructidor/complémentaire

Les termes et leurs traductions peuvent contenir des macros. Et les traductions peuvent contenir des fonctions HTML basiques de mise en forme du texte qui peuvent être nécessaires pour une typographie soignée dans certaines langues. Par exemple, la mise en exposant des nombres ordinaux est possible avec des balises <sup></sup> correctement intrerprêtées par GeneWeb ; on peut écrire 1<sup>er</sup> à la place de 1er.

Utilisation du lexique

Pour appeler les traductions du lexique dans les fichiers de GeneWeb il suffit de mettre le terme entre crochets : [terme]. Il sera traduit automatiquement dans la langue utilisée dans l’URL des pages. Comme les traductions sont incomplètes, si la traduction d’un terme n’est pas disponible, il est affiché sous sa forme brute [terme].

Il est possible de forcer la capitalisation de la première lettre d’une traduction en ajoutant un astérisque après le crochet ouvrant [*, par exemple, en français [*3rd cousins] écrit Cousins issus d’issus de germains.

Pour obtenir le nième élément dans une liste de plusieurs traductions, un numéro est ajouté après le crochet fermant ]# en partant de 0. Par exemple, les noms des mois du calendrier révolutionnaire français (de 0 à 12) :

  • [(french revolution month)]2 écrit frimaire ;
  • [*(french revolution month)]12 écrit Complémentaire ;
  • [(french revolution month)]13 et [(french revolution month)]0 écrivent vendémiaire : s’il n’y a pas de traduction au numéro désiré, la première première traduction est affichée.