Vertalingen: verschil tussen versies
(Afwerking actualisering vertaalmechanisme en -tools.) |
kGeen bewerkingssamenvatting |
||
Regel 9: | Regel 9: | ||
Voor het vertalen wordt gebruik gemaakt van het GNU gettext systeem. Dit dient daarom op het systeem geïnstalleerd te zijn. | Voor het vertalen wordt gebruik gemaakt van het GNU gettext systeem. Dit dient daarom op het systeem geïnstalleerd te zijn. | ||
Voor de engelstalige componenten is een Nederlandse vertaling | Voor de engelstalige componenten is een Nederlandse vertaling beschikbaar. Deze wordt standaard geïnstalleerd (lib/EB/res/locale/nl/LC_MESSAGES/ebwxshell.mo) en de sources daarvan (de .pot en .po files) zitten in de kit, alsmede een script om deze vertaling te onderhouden: | ||
locale/ebwxshell-nl.po | locale/ebwxshell-nl.po | ||
Regel 15: | Regel 15: | ||
locale/make_locales_nl | locale/make_locales_nl | ||
Voor de nederlandstalige componenten is een Engelse vertaling | Voor de nederlandstalige componenten is een Engelse vertaling beschikbaar. Deze wordt standaard geïnstalleerd (lib/EB/res/locale/en/LC_MESSAGES/ebcore.mo) en de sources daarvan (de .pot en .po files) zitten in de kit, alsmede een script om deze vertaling te onderhouden. | ||
locale/ebcore-en.po | locale/ebcore-en.po | ||
Regel 21: | Regel 21: | ||
locale/make_locales_en | locale/make_locales_en | ||
EekBoek | EekBoek kijkt bij het opstarten naar de environment variable 'LANG'. Deze dient te worden gezet op de gewenste taal. Hoe dat precies gaat hangt af van het gebruikte besturingssysteem en welke talen daarop zijn geïnstalleerd. | ||
Onder Linux: | Onder Linux: | ||
Regel 31: | Regel 31: | ||
EekBoek 2.00.03 (English) -- Copyright 2005-2011 Squirrel Consultancy | EekBoek 2.00.03 (English) -- Copyright 2005-2011 Squirrel Consultancy | ||
'''Let op! Wanneer de taalaanduiding niet in de | '''Let op! Wanneer de taalaanduiding niet in de welkomstboodschap voorkomt dan zijn er geen gettext vertaalmodules op het systeem beschikbaar en kan ebshell niet in het Engels worden gedraaid. Installeer in dat geval GNU gettext.''' | ||
Er kunnen opmerkingen komen in de trant van: | Er kunnen opmerkingen komen in de trant van: | ||
Regel 52: | Regel 52: | ||
make_locales aanmaken van de lijst met vertaalbare teksten | make_locales aanmaken van de lijst met vertaalbare teksten | ||
make_locales_nl aanmaken vertaling en -> nl | make_locales_nl aanmaken vertaling en -> nl | ||
ebwxshell.pot master | ebwxshell.pot master | ||
Regel 73: | Regel 73: | ||
==Ontwikkeling aan vertalingen== | ==Ontwikkeling aan vertalingen== | ||
Er is een bepaald mechanisme bedacht om de commando's en keywords te vertalen. Bijvoorbeeld het commando "balans" gaat in de .po file als "cmd:balans" en wordt dan vertaald naar bijvoorbeeld "cmd:balance". Op deze wijze kunnen de namen van de commando's onafhankelijk van de andere teksten worden behandeld. Voor de keywords in het schema heb ik de prefix "scm:" gebruikt, dus dingen als "scm:koppeling" (vertaald naar "scm:association"). | Er is een bepaald mechanisme bedacht om de commando's en keywords te vertalen. Bijvoorbeeld het commando "balans" gaat in de .po file als "cmd:balans" en wordt dan vertaald naar bijvoorbeeld "cmd:balance". Op deze wijze kunnen de namen van de commando's onafhankelijk van de andere teksten worden behandeld. Voor de keywords in het schema heb ik de prefix "scm:" gebruikt, dus dingen als "scm:koppeling" (vertaald naar "scm:association"). | ||
Er is een aparte pagina opgenomen met de werking van een aantal [[Vertaal tools]] die voor vertalingen van EekBoek kan worden gebruikt. | Er is een aparte pagina opgenomen met de werking van een aantal [[Vertaal tools]] die voor vertalingen van EekBoek kan worden gebruikt. |
Versie van 26 mrt 2011 08:28
EekBoek bestaat uit drie componenten: ebshell, ebwxshell en de setup wizard.
ebshell = script/ebshell + lib/EekBoek + lib/EB, met uitzondering van lib/EB/Wx ebwxshell = script/ebwxshell + lib/EB/Wx/Shell iniwiz = lib/EB/Wx/IniWiz
De uitwendige teksten van ebshell en de setup wizard zijn in het Nederlands, die van ebwxshell in het Engels.
Voor het vertalen wordt gebruik gemaakt van het GNU gettext systeem. Dit dient daarom op het systeem geïnstalleerd te zijn.
Voor de engelstalige componenten is een Nederlandse vertaling beschikbaar. Deze wordt standaard geïnstalleerd (lib/EB/res/locale/nl/LC_MESSAGES/ebwxshell.mo) en de sources daarvan (de .pot en .po files) zitten in de kit, alsmede een script om deze vertaling te onderhouden:
locale/ebwxshell-nl.po locale/ebwxshell.pot locale/make_locales_nl
Voor de nederlandstalige componenten is een Engelse vertaling beschikbaar. Deze wordt standaard geïnstalleerd (lib/EB/res/locale/en/LC_MESSAGES/ebcore.mo) en de sources daarvan (de .pot en .po files) zitten in de kit, alsmede een script om deze vertaling te onderhouden.
locale/ebcore-en.po locale/ebcore.pot locale/make_locales_en
EekBoek kijkt bij het opstarten naar de environment variable 'LANG'. Deze dient te worden gezet op de gewenste taal. Hoe dat precies gaat hangt af van het gebruikte besturingssysteem en welke talen daarop zijn geïnstalleerd.
Onder Linux:
$ env LANG=nl_NL.utf8 ebshell EekBoek 2.00.03 (Nederlands) -- Copyright 2005-2011 Squirrel Consultancy
$ env LANG=en_US.utf8 ebshell EekBoek 2.00.03 (English) -- Copyright 2005-2011 Squirrel Consultancy
Let op! Wanneer de taalaanduiding niet in de welkomstboodschap voorkomt dan zijn er geen gettext vertaalmodules op het systeem beschikbaar en kan ebshell niet in het Engels worden gedraaid. Installeer in dat geval GNU gettext.
Er kunnen opmerkingen komen in de trant van:
perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LANGUAGE = (unset), LC_ALL = (unset), LANG = "nl_NL.utf8" are supported and installed on your system. perl: warning: Falling back to the standard locale ("C").
Dit betekent dat de betreffende taal niet door het systeem wordt ondersteund, nog niet is geïnstalleerd, of anders aangeduid moet worden. Raadpleeg daartoe de systeemdocumentatie.
EekBoek regelt de vertaling overigens zelf, ook als de taal niet op het systeem is geïnstalleerd. Het is voor ebshell echter wel noodzakelijk dat de gettext vertaalmodule Locale::gettext op het systeem beschikbaar is.
Onderhoud van de vertalingen
Inhoud locale directory:
make_locales aanmaken van de lijst met vertaalbare teksten make_locales_nl aanmaken vertaling en -> nl ebwxshell.pot master ebwxshell-nl.po vertaling nl make_locales_nl aanmaken vertaling nl -> en ebshell.pot master ebshell-en.po vertaling en ebshell-en.pox bootstrapper voor de Engelse vertaling
Het opnieuw aanmaken van de teksten databases (de .pot) files kan eenvoudig gebeuren door in de EekBoek source directory (waar de GNUmakefile staat) de volgende opdracht uit te voeren.
make xxlocales
Hierdoor worden ook bijgewerkte .po files aangemaakt. Deze kunnen nu nog niet vertaalde teksten bevatten en kunnen worden bijgewerkt met daarvoor bedoelde onderhoudstools (zie verderop).
Het in productie brengen van de nieuwe vertalingen gaat met:
make locales
Ontwikkeling aan vertalingen
Er is een bepaald mechanisme bedacht om de commando's en keywords te vertalen. Bijvoorbeeld het commando "balans" gaat in de .po file als "cmd:balans" en wordt dan vertaald naar bijvoorbeeld "cmd:balance". Op deze wijze kunnen de namen van de commando's onafhankelijk van de andere teksten worden behandeld. Voor de keywords in het schema heb ik de prefix "scm:" gebruikt, dus dingen als "scm:koppeling" (vertaald naar "scm:association").
Er is een aparte pagina opgenomen met de werking van een aantal Vertaal tools die voor vertalingen van EekBoek kan worden gebruikt.