Difference between revisions of "lexicon/fr"

From GeneWeb
Jump to: navigation, search
(Utilisation du lexique dans les templates)
(suppress m=LEX.)
 
(34 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
{{DISPLAYTITLE:Le lexique multilangue de GeneWeb}}
 
{{DISPLAYTITLE:Le lexique multilangue de GeneWeb}}
 
{{languages|lexicon}}
 
{{languages|lexicon}}
Les '''traductions de GeneWeb''' sont contenues historiquement dans un fichier {{c|lexicon.txt}} contenu dans le répertoire {{c|…\gw\lang\}} du logiciel.
+
{{toc right}}
 +
Les '''traductions de GeneWeb''' sont contenues dans les fichiers {{git|hd/lang|lex-utf8.txt}} et {{git|hd/lang|start_utf8.txt}} du répertoire {{git|hd|lang}}. Le second contient les textes spécifiques de la page d’accueil. Ils contiennent du code HTML et des [[macros/fr|variables]] que le démon gwd remplace par des valeurs.
  
Les fichiers utilisés par GeneWeb sont aujourd’hui nommés {{c|lex-utf8.txt}} et {{c|start_utf8.txt}}. Le second contient les textes de la page d’accueil. Les fichiers sont au format UTF-8 et il est important de conserver ce codage à l’enregistrement.  
+
Les fichiers sont en [https://fr.wikipedia.org/wiki/UTF-8 UTF-8] et il est important de conserver ce codage des caractères à l’enregistrement.  
  
Ces fichiers contiennent du code HTML avec des [[macros/fr|variables]] que le démon gwd va remplacer par des valeurs. Par exemple {{c|%t}} est remplacé par le nom de la base, {{c|%b}} par la valeur de [[configuration/fr#body_prop|body_prop]] du fichier de configuration, etc.
+
Les versions de GeneWeb avant la version 5 utilisent le lexique {{git|hd/lang|lexicon.txt}} en [https://fr.wikipedia.org/wiki/ISO_8859-1 Latin-1].
  
Le dictionnaire est visualisable dans votre navigateur Web ; l’adresse par défaut est http://localhost:2317/mabase?m=LEX.
+
Les bonnes volontés pour compléter les traductions GeneWeb sont bienvenues. Voir la page [[contribute/fr]].
 
+
Les bonnes volontés pour traduire GeneWeb dans les langues non supportées actuellement sont bienvenues.
+
  
 
== Code des langues ==
 
== 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 {{c|1=;lang=code_langue}} où code_langue est le code sur deux lettres de la langue utilisée comme décrit par la variable {{c|[!languages]}} au début de {{c|lex_utf8.txt}} :
+
La langue utilisée dans GeneWeb est modifiable sur la page d’accueil, le choix [[links/fr|modifie l’URL des pages]] en ajoutant la syntaxe {{c|1=lang=code_langue}} où code_langue est le code [https://fr.wikipedia.org/wiki/Liste_des_codes_ISO_639-1 ISO 639-1] à deux lettres de la langue, comme traduit par la variable {{c|[!languages]}} au début de {{c|lex_utf8.txt}} :
  
 
<pre>
 
<pre>
Line 19: Line 18:
 
br=breton
 
br=breton
 
ca=catalan
 
ca=catalan
 +
co=corse
 
cs=tchèque
 
cs=tchèque
 
da=danois
 
da=danois
Line 45: Line 45:
 
</pre>
 
</pre>
  
Notez que si vous indiquez plusieurs fois {{c|1=;lang=}} dans l’URL, c’est la première rencontrée dans l’URL qui sera effective.
+
Notez que si vous indiquez plusieurs fois {{c|1=lang=}} dans l’URL, c’est la première rencontrée dans l’URL qui sera effective.
  
== Utilisation du lexique dans les templates ==
+
== Description du lexique ==
 +
=== Traduction directe ===
  
Le lexique est un fichier textuel qui définit la traduction en plusieurs langues d'un grand nombre de terems utilisés par GeneWeb.  
+
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 :
+
La structure du fichier est la suivante :
 
<pre>
 
<pre>
 
     terme
 
     terme
l1: traduction en langue 1
+
l1: terme traduit en langue 1
l2: traduction en langue 2
+
l2: terme traduit en langue 2
  
 
     terme 2
 
     terme 2
l1: traduction en langue 1
+
l1: terme 2 traduit en langue 1
     ....
+
     ...
 
</pre>
 
</pre>
dans lequel {{c|l1}} et {{c|l2}} font partie des codes langue cités ci-dessus. Toutes les langues ne sont pas nécessairement présentes, auquel cas l'affichage apparaîtra sous la forme {{c|[terme]}}.
 
  
Pour appeler les traductions du lexique {{c|lex_utf8.txt}}, le texte original doit être mis entre crochets.  
+
Le terme est traduit pour chaque langue sur une seule ligne. Les entêtes des lignes ({{c|l1}}, {{c|l2}}…)  utilisent les [[#Code des langues|codes à deux lettres des langues]].
 +
 
 +
Certains termes contiennent des listes de traductions, par exemple :
 +
<pre>
 +
    (french revolution month)
 +
fr: vendémiaire/brumaire/frimaire/nivôse/pluviôse/ventôse/germinal/floréal/prairial/messidor/thermidor/fructidor/complémentaire
 +
 
 +
    son/daughter/child
 +
fr: fils/fille/enfant
 +
</pre>
 +
 
 +
=== Traductions multiples ===
 +
 
 +
Plusieurs termes peuvent apparaitre dans la même requête de traduction, séparés par un double deux-points comme dans {{c|[*add::parents]}}. Dans ce cas, les termes {{c|add}} et {{c|parents}} ont chacun leur propre définition dans le lexique.
 +
 
 +
Certaines langues (allemand par exemple) inversent le verbe et l'objet. Dans ces cas, on ajoute "+before" à la fin de la définition de la première chaine :
 +
 
 +
<pre>
 +
    add
 +
de: hinzufügen +before
 +
fr: ajouter
 +
</pre>
 +
 
 +
{{c|[*add::parents]}} sera traduit en français par {{c|Ajouter parents}} et en allemand par
 +
{{c|Eltern hinzufügen}}.
 +
 
 +
=== Traduction avec substitution ===
 +
 
 +
Les termes et leurs traductions peuvent contenir des variables par exemple :
 +
<pre>
 +
    %d years ago
 +
fr: il y a %d ans
 +
</pre>
 +
 
 +
Les chaines de caractères à substituer sont séparées de la chaine principame par trois deux-points, chaque chaine étant séparée par un seul deux-points.
 +
 
 +
[living between %s and %s:::xxx:yyy]
 +
sera traduit en
 +
vivant entre xxx et yyy
 +
 
 +
=== Déclinaisons ===
 +
 
 +
GeneWeb est également capable de gérer les [[Declension/fr|déclinaison]]s des langues, par exemple :
 +
<pre>
 +
    parents
 +
eo: gepatroj:a:+n
 +
pl: rodzice:a:-ów
 +
</pre>
 +
 
 +
=== Apostrophes et voyelles ===
 +
 
 +
Certaines langues nécessitent une adaptation dans le cas des mots commençant par une voyelle. On dit par exemple « au baptème » mais « à l’inhumation ». Pour traiter ces cas, il est proposé deux groupes de lettres, séparées par une barre verticale et encadrées par des crochets : {{c|<nowiki>[…|…]</nowiki>}}.
 +
 
 +
<pre>
 +
    to %1
 +
en: to %1
 +
fr: [au |à l’]%1
 +
 
 +
    %1 of %2
 +
en: %1 of %2
 +
fr: %1 d[e |’]%2
 +
</pre>
 +
 
 +
Note : les versions antérieures de Geneweb et le traitement des dates ne permettent la substitution que d’un seul caractère : {{c|fr: %1 d[e’]%2}}, l’espace entre « de » et le mot suivant étant ajouté par le logiciel. La mise en oeuvre de la solution proposée, et l'uniformisation du traitement de l'apostrophe est en cours.
 +
 
 +
=== Html ===
 +
Les traductions peuvent contenir des fonctions HTML basiques de mise en forme du texte. Elle peuvent être nécessaires pour une typographie soignée dans certaines langues. Par exemple, la mise en exposant des nombres ordinaux (n<sup>ième</sup>/1<sup>er</sup>/2<sup>e</sup>/3<sup>e</sup>/4<sup>e</sup>/…) :
 +
<pre>
 +
    nth
 +
fr: n<sup>ième</sup>/1<sup>er</sup>/2<sup>e</sup>/3<sup>e</sup>/4<sup>e</sup>/…
 +
</pre>
 +
 
 +
== Utilisation du lexique ==
 +
Pour appeler les traductions du lexique dans les fichiers de GeneWeb il suffit de '''mettre le terme entre crochets'''. 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 {{c|[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 {{c|[*}}, par exemple, en français {{c|[*3rd cousins]}} écrit {{c|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 {{c|]#}} en partant de 0. Par exemple, les noms des mois du calendrier révolutionnaire français (de 0 à 12) :
 +
* {{c|[(french revolution month)]2}} écrit {{c|frimaire}} ;
 +
* {{c|[*(french revolution month)]12}} écrit {{c|Complémentaire}} ;
 +
* {{c|[(french revolution month)]13}} et {{c|[(french revolution month)]0}} écrivent {{c|vendémiaire}} : s’il n’y a pas de traduction au numéro désiré, la première première traduction est affichée.
 +
 
 +
Le nombre sélecteur peut être remplacé par un identifiant dans les cas spécifiques du sexe ou du nombre de familles et d'enfants :
 +
*{{c|[family/families]f}} ou {{c|[family/families]nb_families}} choisira selon la valeur de {{c|nb_families}}.
 +
*{{c|[child/children]c}} ou {{c|[child/children]nb_children}} choisira selon la valeur de {{c|nb_children}}.
 +
*{{c|[son/daughter/child]s}} choisira selon la valeur du sexe de l'enfant.
 +
*{{c|[man/woman/unknown]n}} ou {{c|[man/woman/unknown]sex}} choisira selon la valeur du sexe de la personne.
 +
*{{c|[witness/witnesses]w}} choisira selon le nombre de témoins à un évènement.
 +
*{{c|[zero/one/two/three/four]x}} choisira selon la valeur de {{c|count}}.
 +
 
 +
Note: seule la variante à un caractère fonctionne actuellement (WIP).
 +
 
 +
== Ajout d'un lexique ==
 +
 
 +
Lorsqu'un utilisateur développe ses propres [[templates/fr|templates]], il a la possibilité d'augmenter le contenu du dictionnaire de traductions utilisées par GeneWeb. Les extensions au dictionnaire respectent la syntaxe décrite ci-dessus, et sont rassemblées dans un fichier séparé invoqué par l'intermédiaire du paramètre {{c|-add_lexicon}} au lancement de [[gwd|gwd]]. Le nouveau fichier doit être placé dans l'un des répertoire {{c|lang}}.
 +
-add_lexicon nom_du_dictionnaire_complementaire.txt
 +
 
  
Deux fonctions supplémentaires sont disponibles :
+
{{manuel}}
*s'il y a un astérisque après le crochet ouvrant, la première lettre de la traduction est capitalisée.
+
:Par exemple {{c|[*3rd cousins]}} donnera en français {{c|Cousins issus d’issus de germains}} ;
+
*si le crochet fermant est suivi d'un nombre, ce dernier correspond à la nième occurrence de la traduction en commençant à 0, les occurrences étant séparées par des barres obliques {{c|/}}. Si cette occurrence n’existe pas, c’est la première qui est choisie.
+
:Par exemple {{c|[week day]3}} donnera en français {{c|mercredi}} et {{c|[*week day]8}} donnera {{c|Dimanche}} (la première entrée).
+
  
 
[[Category:Manuel]]
 
[[Category:Manuel]]

Latest revision as of 11:21, 9 November 2020

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.

Les bonnes volontés pour compléter les traductions GeneWeb sont bienvenues. Voir la page contribute/fr.

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 ISO 639-1 à deux lettres de la langue, comme traduit par la variable [!languages] au début de lex_utf8.txt :

af=afrikaans
bg=bulgare
br=breton
ca=catalan
co=corse
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

Traduction directe

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.

Certains termes 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

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

Traductions multiples

Plusieurs termes peuvent apparaitre dans la même requête de traduction, séparés par un double deux-points comme dans [*add::parents]. Dans ce cas, les termes add et parents ont chacun leur propre définition dans le lexique.

Certaines langues (allemand par exemple) inversent le verbe et l'objet. Dans ces cas, on ajoute "+before" à la fin de la définition de la première chaine :

    add
de: hinzufügen +before
fr: ajouter

[*add::parents] sera traduit en français par Ajouter parents et en allemand par Eltern hinzufügen.

Traduction avec substitution

Les termes et leurs traductions peuvent contenir des variables par exemple :

    %d years ago
fr: il y a %d ans

Les chaines de caractères à substituer sont séparées de la chaine principame par trois deux-points, chaque chaine étant séparée par un seul deux-points.

[living between %s and %s:::xxx:yyy] 

sera traduit en

vivant entre xxx et yyy

Déclinaisons

GeneWeb est également capable de gérer les déclinaisons des langues, par exemple :

    parents
eo: gepatroj:a:+n
pl: rodzice:a:-ów

Apostrophes et voyelles

Certaines langues nécessitent une adaptation dans le cas des mots commençant par une voyelle. On dit par exemple « au baptème » mais « à l’inhumation ». Pour traiter ces cas, il est proposé deux groupes de lettres, séparées par une barre verticale et encadrées par des crochets : […|…].

    to %1
en: to %1
fr: [au |à l’]%1

    %1 of %2
en: %1 of %2
fr: %1 d[e |’]%2

Note : les versions antérieures de Geneweb et le traitement des dates ne permettent la substitution que d’un seul caractère : fr: %1 d[e’]%2, l’espace entre « de » et le mot suivant étant ajouté par le logiciel. La mise en oeuvre de la solution proposée, et l'uniformisation du traitement de l'apostrophe est en cours.

Html

Les traductions peuvent contenir des fonctions HTML basiques de mise en forme du texte. Elle peuvent être nécessaires pour une typographie soignée dans certaines langues. Par exemple, la mise en exposant des nombres ordinaux (nième/1er/2e/3e/4e/…) :

    nth
fr: n<sup>ième</sup>/1<sup>er</sup>/2<sup>e</sup>/3<sup>e</sup>/4<sup>e</sup>/…

Utilisation du lexique

Pour appeler les traductions du lexique dans les fichiers de GeneWeb il suffit de mettre le terme entre crochets. 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.

Le nombre sélecteur peut être remplacé par un identifiant dans les cas spécifiques du sexe ou du nombre de familles et d'enfants :

  • [family/families]f ou [family/families]nb_families choisira selon la valeur de nb_families.
  • [child/children]c ou [child/children]nb_children choisira selon la valeur de nb_children.
  • [son/daughter/child]s choisira selon la valeur du sexe de l'enfant.
  • [man/woman/unknown]n ou [man/woman/unknown]sex choisira selon la valeur du sexe de la personne.
  • [witness/witnesses]w choisira selon le nombre de témoins à un évènement.
  • [zero/one/two/three/four]x choisira selon la valeur de count.

Note: seule la variante à un caractère fonctionne actuellement (WIP).

Ajout d'un lexique

Lorsqu'un utilisateur développe ses propres templates, il a la possibilité d'augmenter le contenu du dictionnaire de traductions utilisées par GeneWeb. Les extensions au dictionnaire respectent la syntaxe décrite ci-dessus, et sont rassemblées dans un fichier séparé invoqué par l'intermédiaire du paramètre -add_lexicon au lancement de gwd. Le nouveau fichier doit être placé dans l'un des répertoire lang.

-add_lexicon nom_du_dictionnaire_complementaire.txt



Manuel GeneWeb

Rembrandt Old Man Reading a Book.jpg

Utiliser et gérer une base généalogique

Annexe technique