Aangepaste vertalingen

Aangepaste vertalingen

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.

Deel Een – Kiwitrees aangepaste vertaling systeem

translate_1

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:

  1. Bovenaan net beneden het “Selecteer taal” vakje zijn vakken verschenen om een nieuwe aangepaste vertaling toe te voegen. Om het te gebruiken voer de standaard kiwitrees tekst in het linker vak in en uw aangepaste versie rechts. (Opmerking: zie belangrijke informatie over de standaard kiwitrees tekst hieronder). Klik dan op opslaan direct onder deze vakken.
  2. Wanneer u de nieuwe vertaalde pagina opslaat zal de pagina verversen en het nieuwe item verschijnen in het  “Bewerk bestaande vertaling” gedeelte en de twee eerste vakken zijn leeg welke weer gebruikt kan worden voor meer vertalingen. Dit gedeelte maakt een lijst van elke aangepaste vertaling die u maakt inclusief datum wanneer die vertaling voor het laatst is aangepast. Het linker vak (standaard tekst) is ‘read-only’, maar het rechtervak kan bewerkt worden wanneer u dat wilt. Er is ook een verwijder icoon rechts daarvan als u een vertaling helemaal wilt verwijderen.
  3. Eenmaal een of meer vertalingen gemaakt en opgeslagen bekijk dan de pagina waar ze moeten staan. Als die pagina al open was in uw browser moet u die vernieuwen  om de wijzigingen te zien. Anders zouden ze direct zichtbaar moeten zijn.

BELANGRIJKE OPMERKINGEN

  • De “standaard kiwitrees tekst” is kritiek voor het systeem. Het moet exact dezelfde tekst zijn welke in de kiwitrees code voorkomt (“internationaal Engels”).
  • Probeer niet een al vertaalde tekst te vertalen en neem niet aan dat wat u ziet op het scherm, eigenlijk de “standaard kiwitrees tekst” is. Het kan aangepast zijn door de weergave code (CSS), inclusief conversie effecten zoals alles of gedeeltelijk in hoofdletters.
  • De vertaling library gebruikt veel caching. Zodat na elke toegevoegde aangepaste vertaling of de cache leeg maken (Beheer > Websitebeheer > Ruim data map op > verwijder het’cache’ item), of wacht minstens twee uur. De exacte locatie van uw cache en de tijd nodig om dit automatisch te verwijderen kan variëren afhankelijk van de instellingen.
  • Dit aangepaste vertalings systeem is niet geschikt voor complexe tekst strings,zoals meervoud of geslachtsspecifieke vertalingen. Deze moeten gedaan worden met de “gettext” versie van het Bestand-gebaseerde aangepaste vertaling systeem hieronder beschreven.
  • Teveel aangepaste vertalingen kunnen uw systeem vertragen. Als u veel veranderingen moet maken overweeg dan of zulke veranderingen nuttig kunnen zijn voor andere gebruikers die dezelfde taal gebruiken. Als dit zo is, kunt u of voorstellen een wijziging aan kern tekst (Engels) of wordt een vertaler en help mee met de kern vertaling van uw taal.
  • Als u problemen heeft, kijk dan op het kiwitrees support forum en gebruik dat om extra hulp te vragen.

Deel Twee – Bestand-gebaseerd aangepaste vertaling systeem

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).

Waar deze lokale taalbestanden opslaan

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.

Bestandnamen en formaten

De bestandsnaam bevat een taalcode, plus een extensie om het formaat aan te geven. Voorbeelden van taalcodes zijn:

  • it (Italiaans)
  • fr (Frans)
  • de (Duits)
  • sr@latn (Servisch in latijnse tekens)
  • en_AU (Australisch engels)

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:

  • Eenvoud. U kan de bestanden maken met een eenvoudige tekstbewerker of  een spreadsheet.

De nadelen van dit formaat zijn:

  • Ze kunnen niet gebruikt worden voor complexe vertalingen zoals meervoud (verschillende talen hebben verschillende manieren om meervoud uit te drukken afhankelijk van het aantal objecten), of meervoudigee context (waar hetzelfde woord meer betekenissen heeft afhankelijk van de context).
  • Afhankelijk van uw server configuratie, kan het voor een bezoeker mogelijk zijn de inhoud van het bestand te zien en kunt u daarin gevoelige informatie hebben staan..

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:

  • Relatief eenvoudig. U kan de bestanden maken met een eenvoudige tekstverwerker.

De nadelen van dit formaat zijn:

  • Ze kunnen niet gebruikt worden voor complexe vertalingen zoals meervoud (verschillende talen hebben verschillende manieren om meervoud uit te drukken afhankelijk van het aantal objecten), of meervoudigee context (waar hetzelfde woord meer betekenissen heeft afhankelijk van de context)..

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:

  • Het kan gebruikt worden voor alle vertalingen inclusief het complexe meervoud en contexten. Het is het formaat dat gebruikt wordt voor de eigen vertalingsbestanden van kiwitrees.
  • Voor bestanden die een groot aantal vertalingen bevatten is het veel sneller en gebruikt het minder geheugen dan de andere opties, omdat het niet alle vertalingen in het geheugen moet laden.

De nadelen van dit formaat zijn:

  • Het heeft andere software nodig om deze bestanden te maken.

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

  • Naar welke taal u ook vertaald uw aangepaste taal moet altijd vertaald worden van de tekst in de kern code (WT_I18N::translate(‘xxxxx’), niet van een van de standaard taalbestanden. Als u deze teksten wilt zien op uw scherm verzeker u er dan van dat u en-US bekijkt, in plaats van een andere taal.
  • De vertaling library gebruikt veel caching. Zodat na toevoegen van uw aangepast bestand u de cache moet leegmaken (van uw tijdelijke syteembestanden map) of op zijn minst twee uur moet wachten. De exacte locatie van uw cache en de tijd nodig om dit automatisch te verwijderen kan variëren afhankelijk van de instellingen.


Have your say!

Have your say!

Deze website gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.