Kiwitrees is in het engels geschreven en het gebruikt engels intern. Het GEDCOM-bestandsformaat heeft ook engelse kenmerken. Omdat mensen verschillende talen spreken gebruiken we vertalingsbestanden om tekst om te zetten naar een andere taal. De vertalingsbestanden worden opgeslagen in de language/ map.
Merk op dat we ook vertalingen hebben in de regionale varianten van het engels. We hebben aparte vertalingen voor “brits engels” and “amerikaans engels”.
Deze FAQ heeft twee gedeelten. Het eerste is een uitleg van kiwitrees unieke methode om standaardteksten aan te passen. Dit wordt gedaan in de beheerpagina’s van kiwitrees(Beheer > Website beheer > Aangepaste vertaling) en daar is geen kennis van programmeren voor nodig. Het tweede gedeelte beschrijft het taalbestanden systeem overgenomen van webtrees. Voor compatibiliteit en om complexere taal strings te kunnen gebruiken blijft dit bestaan. U kunt zelfs beide sytemen gebruiken indien gewenst.
Wanneer u de pagina Beheer > Websitebeheer > Aangepaste vertaling opent zult u eerst een optie zien om een taal te kiezen. De keuze bestaat uit elk van de talen die u heeft ingesteld om op uw website te gebruiken. Kies de taal waar u een aangepaste vertaling voor wilt maken.
De pagina zal nu ververst worden en twee extra gedeelten weergeven:
Het systeem van aangepaste vertalingen gebruikt door webtrees en overgenomen door kiwitrees, gebruikt taalbestanden om aangepaste vertalingen in op te slaan. Ze kunnen van deze drie types zijn, afhankelijk van de complexiteit van de tekst die vertaald wordt en naar eigen voorkeur. De bestandtypes zijn csv, php en ‘gettext’ (.mo).
U zal een sub-map “language” in kiwitrees data-map moeten maken. b.v. data/language/. Als u deze data-map buiten de root van de webserver heeft geplaatst dan zal het in deze nieuwe privé data-map moeten zijn.
De bestandsnaam bevat een taalcode, plus een extensie om het formaat aan te geven. Voorbeelden van taalcodes zijn:
Drie formaten kunnen gebruikt worden en zijn hieronder beschreven. De vertalingen zijn altijd vanuit het engels naar de doel taal.
Merk op dat vertalingen altijd hoofdlettergevoelig zijn zodat “Hello” een andere vertaling is dan “hello”.
CSV formaat
Het eenvoudigste formaat is CSV. Alhoewel CSV staat voor “comma separated values”, gebruiken we puntkomma’s in plaats van komma’s en alle tekst moet omgeven zijn door dubbele aanhalingstekens. Hier een voorbeeld van een CSV-bestand voor brits engels, welke dan data/language/en_GB.csv zou heten.
"yes";"certainly" "no";"perhaps not"
Dit betekent dat het woord “yes” wordt vervangen door “certainly” door het hele programma. Om een dubbel aanhalingsteken in de tekst te krijgen zet er een backslash “\” voor.
Het voordeel van dit formaat is:
De nadelen van dit formaat zijn:
PHP formaat
Het tweede formaat gebruikt een eenvoudig PHP script om een reeks vertalingen te maken. Naast de vertalingen bevat het bestand een controle om bezoekers van uw website geen toegang tot uw gegevens te geven. Hier een voorbeeld van een PHP-bestand voor amerikaans engels welke data/language/en_US.php zou heten. Om een enkel aanhalingsteken in te sluiten in de tekst, moet het voorafgegaan worden door een backslash “\”.
<?php if (!defined('WT_WEBTREES')) { header('HTTP/1.0 403 Forbidden'); exit; } return array( 'yes'=>'for sure!', 'no'=>'no way!' );
Het is belangrijk dat er geen lege regels of spaties voor de eerste regel – dus sluiten we deze niet in.
De voordelen van dit formaat zijn:
De nadelen van dit formaat zijn:
Gettext formaat
Het derde formaat heet gettext. Gettext is een open-source, industrie-standaard, library voor vertalingen. Elke taal heeft twee bestanden nodig. Er is een PO-bestand, welke door mensen te lezen tekst bevat. Alhoewel u deze *kan* bewerken met een tekstverwerker is het gebruikelijk om dit met een speciale “PO-editor” te doen. POEdit is een veelgebruikte tool hiervoor ,alhoewel het een aantal beperkingen heeft en we bevelen daarom aan om Better PO Editor te gebruiken, welke geschreven werd door een van de webtrees developers, Michele Locati. Het PO-bestand moet omgezet worden naar een MO-bestand welke door een computer gelezen kan worden, dit is een samengeperste versie van hetzelfde bestand. Maar u moet een binair MO-bestand nemen en dit terug converteren naar een PO-bestand om het te kunnen bewerken met de Better PO Editor. Alleen POEdit heeft het msgunfmt uitvoeringbestand om de conversie terug te zetten, U heeft dus beide tools nodig.
Hier een voorbeeld van een PO-bestand voor amerikaans engels welke enkele joodse termen omzet naar Ashkenazische spelling. Het bestand zou en_US.po heten en u moet het converteren naar een .mo-bestand, wat data/language/en_US.mo zou heten. Merk op dat het verscheidene context-gevoelige vertalingen bevat, waar we verschillende vertalingen hebben voor dezelfde engelse tekst.
"Project-Id-Version: webtrees\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Poedit-Language: en\n" "X-Poedit-Country: US\n" "X-Poedit-SourceCharset: utf-8\n" msgctxt "NOMINATIVE" msgid "Heshvan" msgstr "Cheshvan" msgctxt "NOMINATIVE" msgid "Tevet" msgstr "Teves" msgctxt "GENITIVE" msgid "Heshvan" msgstr "Cheshvan" msgctxt "GENITIVE" msgid "Tevet" msgstr "Teves" msgctxt "LOCATIVE" msgid "Heshvan" msgstr "Cheshvan" msgctxt "LOCATIVE" msgid "Tevet" msgstr "Teves" msgctxt "INSTRUMENTAL" msgid "Heshvan" msgstr "Cheshvan" msgctxt "INSTRUMENTAL" msgid "Tevet" msgstr "Teves" msgid "Heshvan" msgstr "Cheshvan" msgid "Tevet" msgstr "Teves" msgid "Bat mitzvah" msgstr "Bas mitzvah" msgid "Date of bat mitzvah" msgstr "Date of bas mitzva" msgid "Place of bat mitzvah" msgstr "Place of bas mitzvah" msgid "Source for bat mitzvah" msgstr "Source for bas mitzvah"
De voordelen van dit formaat zijn:
De nadelen van dit formaat zijn:
Teken codering
Bestanden moeten worden opgeslagen in UTF8 codering, in plaats van ISO-8859, latin etc. U moet extra voorzichtig zijn met sommige tekstverwerkers omdat ze het bestand beginnen met een onzichtbaar letterteken (genoemd een Byte-Order-Mark). Als, nadat uw bestand geïnstalleerd is, u een foutmelding in de vorm van “Headers already sent”, heeft u waarschijnlijk een BOM teken gebruikt.
Algemene opmerkingen
Have your say!
Je moet inloggen om een reactie te kunnen plaatsen.