Vertalingen: verschil tussen versies

Uit EekBoek
Naar navigatie springenNaar zoeken springen
(Aanvullingen als gevolg van vertaalbaar maken van commando's en keywords, Issue is dat EekBoek meertaligheid van de commando's moet ondersteunen zonder de applicatie zelf tweetalig te maken.)
(Gedeeltelijk geupdate)
Regel 6: Regel 6:
 
  iniwiz    = lib/EB/Wx/IniWiz
 
  iniwiz    = lib/EB/Wx/IniWiz
  
De uitwendige teksten van ebshell en de setup wizard zijn in het Nederlands, die van ebwxshell in het Engels. Overigens is de programma-taal intern Engels, hoewel er hier en daar ook Nederlandse kreten in voorkomen.
+
De uitwendige teksten van ebshell en de setup wizard zijn in het Nederlands, die van ebwxshell in het Engels.
  
* Voor ebshell is een partiële Engelse vertaling beschikbaar.
+
Voor de engelstalige componenten is een Nederlandse vertaling besschikbaar. 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:
* Voor ebwxshell is een up-to-date Nederlandse vertaling beschikbaar, deze wordt standaard geïnstalleerd (.mo file) en de source daarvan (de .pot en .po files) zit in de kit, alsmede een script om deze vertaling te onderhouden.
 
* Voor de setup wizard is nog geen vertaling gemaakt, maar deze is niet moeilijk.
 
  
==De vertaling van ebshell (inclusief setup wizard) bijwerken en controleren==
+
locale/ebwxshell-nl.po
 +
locale/ebwxshell.pot
 +
locale/make_locales_nl
 +
 
 +
Voor de nederlandstalige componenten is een Engelse vertaling besschikbaar. 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 kijk bij het opstarten naar de environment variable 'LANG'. Deze diennt 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 welkomsboodschap voorkomt dan zijn er geen vertaalmodules op het systeem beschikbaar en kan ebshell niet in het Engels worden gedraaid.'''
 +
 
 +
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 taalinstelling niet door het systeem wordt ondersteund, of nog niet is geïnstalleerd. Raadpleeg daartoe de systeemdocumentatie.
 +
 
 +
EekBoek regelt de vertaling zelf, ook als deze niet op het systeem is geïnstalleerd.
 +
 
 +
==Onderhoud van de vertalingen==
  
 
Inhoud locale directory:
 
Inhoud locale directory:
  
  make_locales          aanmaken vertaling en -> nl
+
  make_locales          aanmaken van de lijst met vertaalbare teksten
 +
 
 +
make_locales_nl      aanmaken vertaling en -> nl
 
  ebwxshell.pot        master
 
  ebwxshell.pot        master
 
  ebwxshell-nl.po      vertaling nl
 
  ebwxshell-nl.po      vertaling nl
Regel 23: Regel 59:
 
  ebshell.pot          master
 
  ebshell.pot          master
 
  ebshell-en.po        vertaling en
 
  ebshell-en.po        vertaling en
  ebshell-en.pox        bootstrapper
+
  ebshell-en.pox        bootstrapper voor de Engelse vertaling
  
In de regel werkt het als je de environment variable 'LANG' zet met de gewenste taal.
+
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.
  
  $ LANG=C ebshell
+
  make xxlocales
EekBoek 2.00.00 (Nederlands) -- Copyright 2005-2010 Squirrel Consultancy
 
  
Gaat goed ...
+
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).
  
$ LANG=en_US.UTF-8 ebshell
+
Het in productie brengen van de nieuwe vertalingen gaat met:
perl: warning: Setting locale failed.
 
perl: warning: Please check that your locale settings:
 
        LANGUAGE = (unset),
 
        LC_ALL = (unset),
 
        LANG = "en_US.UTF-8"
 
    are supported and installed on your system.
 
perl: warning: Falling back to the standard locale ("C").
 
EekBoek 2.00.00 (Nederlands) -- Copyright 2005-2010 Squirrel Consultancy
 
  
Geeft een waarschuwing die laat zien dat een andere taal geactiveerd zou moeten worden.
+
make locales
  
 
==Ontwikkeling aan vertalingen==
 
==Ontwikkeling aan vertalingen==

Versie van 25 mrt 2011 08:17

EekBoek bestaat uit drie componenten: ebshell, ebwxshell en de setup wizard.

Ruwweg:

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 de engelstalige componenten is een Nederlandse vertaling besschikbaar. 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 besschikbaar. 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 kijk bij het opstarten naar de environment variable 'LANG'. Deze diennt 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 welkomsboodschap voorkomt dan zijn er geen vertaalmodules op het systeem beschikbaar en kan ebshell niet in het Engels worden gedraaid.

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 taalinstelling niet door het systeem wordt ondersteund, of nog niet is geïnstalleerd. Raadpleeg daartoe de systeemdocumentatie.

EekBoek regelt de vertaling zelf, ook als deze niet op het systeem is geïnstalleerd.

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.