Multilingual lexicon for GeneWeb
Error creating thumbnail: File missing Language: |
English • français |
---|
GeneWeb performs text translations according to rules contained in a file called lex-utf8.txt
and start_utf8.txt
in the folder gw/lang
of your installation. The second file contains text specific to the welcome page.
Version 7 of GeneWeb has reverted to the initial lexicon.txt
naming.
These files are encoded according to UTF-8, and it is important to maintain this encoding if you decide to edit their content.
GeneWeb versions 5 and before were using the file lexicon.txt
encoded in Latin-1.
Goodwill to expand GeneWeb translations capabilities is welcome!! See the contribute page.
Language codes
The language of the user interface of GeneWeb is selectable from the welcome page, or can be changed at any time by adding the lang=xx
text in the URL, where xx
is the two letter code (ISO 639-1) of the language of your choice.
af=Afrikaans ar=Arabic bg=Bulgarian br=Breton ca=Catalan co=Corsican cs=Czech da=Danish de=German en=English eo=Esperanto es=Spanish et=Estonian fi=Finnish fr=French he=Hebrew is=Icelandic it=Italian lt=Lithuanian lv=Latvian nl=Dutch no=Norwegian oc=Occitan pl=Polish pt=Portuguese pt-br=Brazilian-Portuguese ro=Romanian ru=Russian sk=Slovak sl=Slovenian sv=Swedish tr=Turkish zh=Chinese
Note that if the command lang=
appears multiple times in the URL, only the first one will be taken into account.
Description of the lexicon
Direct translation
The lexicon is a text file which defined translation in several languages (hopefully all the ones supported by GeneWeb, but not necessarily) for terms that appear at the head of each translation item.
item l1: item translated in language 1 l2: item translated in language 2 item 2 l1: item 2 translated in language 1 ...
The item translation for each language is proposed on a single line, one per language as designated by its two letter code.
Some languages offer multiple translations for a single item:
(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
Multiple translations
Several translation items may appear between brackets, separated by two colons as in [$add::parents]
. In this case, the terms add
and parents
have each their own entry in the lexicon.
Some languages (german for instance) invert the verb and the object. In this case, adding "+before" at the end of the definition of the first string will trigger this inversion:
add de: hinzufügen +before fr: ajouter
[*add::parents]
will translate in french as Ajouter parents
and in german as
Eltern hinzufügen
.
Translation with substitution
The items may contain variables as in:
%d years ago fr: il y a %d ans
The strings to be substituted are separated from the main string by a sequence of three colons, a single colon separating substitution strings from each other.
[living between %s and %s:::xxx:yyy]
will be transformed into
living between xxx and yyy
Declension
GeneWeb is also capable of handling declensions as in:
parents eo: gepatroj:a:+n pl: rodzice:a:-ów
Vowels and apostrophe
Some languages require some adaptation when a word begins by a vowel. For instance, one says in french: "au baptème" but "à l'inhumation. To cater for these cases, groups of letters between square brackets, separated by a vertical bar are selected depending on the presence of a vowel at the beginning of the following word.
to %1 en: to %1 fr: [au |à l']%1 %1 of %2 en: %1 of %2 fr: %1 d[e |’]%2
Note : previous versions of GeneWeb handle a single character substitution: fr: %1 d[e’]%2
, the space necessary after the "de" being added by the system. Implementation of the better solution described above is underway.
Html
Translations may contain basic HTML code for text formatting. This may be necessary for high quality typography of cardinal numbering: (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>/…
Using the lexicon
To ask for a translation, it is sufficient to include the item between brackets: [item]
. It will be translated into the current language. If the translation is not available, the bracketed form will appear instead.
It is possible to "upper case" the first letter (GeneWeb will determine if this is appropriate according to the position in the sentence) by putting a *
after the opening bracket. For instance, in french, [*3rd cousins]
will translate into Cousins issus d’issus de germains
To obtain the nth element of a list, add a number after the closing backet, starting at "0". For instance, the french republican month (0 to 12) will display (with lang=fr
) in the following fashion:
[(french revolution month)]2
translate intofrimaire
.[*(french revolution month)]12
translate intoComplémentaire
.[(french revolution month)]13
and[(french revolution month)]0
translate intovendémiaire
: If the index exceeds the limit, the first element is selected.
This number based feature is extended to cover several specific cases relative to the sex and number of families and children:
[family/families]f
or[family/families]nb_families
will select according to the value ofnb_families
[child/children]c
or[child/children]nb_children
will select according to the value ofnb_children
[son/daughter/child]s
will select according to the sex of the child[man/woman/unknown]n
or[man/woman/unknown]sex
will select according to the sex of the person[witness/witnesses]w
will select according to the number of witnesses of an event.[zero/one/two/three/four]x
will select according to the value ofcount
Note: the one character variant is currently the only one available (WIP).
Extension of lexicon
When developing his own templates, a user may want to extend the available lexicon. Such an extension is provided through a file following the same syntax as above, and is supplied to GeneWeb with the parameter -add_lexicon
at the launch of gwd. The supplemental lexicon must be placed in one of the lang
folder (bases/lang
or gw/lang
)
-add_lexicon supplementary_lexicon.txt
Upcoming version 7.1 of GeneWeb proposes a new organisation for ressources files (templates and lexicons).
Lexicons are places in plugins/v7/assets/lex
, and all the files in this folder are added to the lexicon.
GeneWeb Manual
- Download and install GeneWeb program under GNU/Linux, Mac OS X, Microsoft Windows, FreeBSD; on Mac OS X, Linux or Windows using Docker; or in CGI mode behind a web server.
- Understand GeneWeb server, homonym, consanguinity.
Use and manage genealogical databases
- Import Gedcom
.ged
or GeneWeb.gw
files with gwsetup or in command-line. - Update datas (add/remove individuals and families), merge duplicates, type dates.
- Use wikitext syntax, macros, keyboard shortcuts.
- Clean, recover, rename, save, archive a database.
- Merge and split multiples databases.
Technical annex
- Personalize CSS, header and trailer, templates, lexicon and declension.
- Configuration file
.gwf
(for templm), wizard notes, passwords for friends/wizards and access restrictions to databases. - Add images in notes, further remarks for experts.