Instruktioner til oversætter
Fra GLFPD Wiki, den frie encyklopædi
Versionen fra 2. jan 2009 kl. 13:29 KennethNielsen (Diskussion | bidrag) po-filer (Gettext) � Gå til forrige forskel |
Versionen fra 2. jan 2009 kl. 13:51 KennethNielsen (Diskussion | bidrag) Gå til næste forskel → |
||
Linje 5: | Linje 5: | ||
Internationalisering og lokalisering håndteres indenfor fri software hovedsageligt ved hjælp af et program som hedder Gettext. Måden det fungerer på er, at alle de tekststrenge som skal bruges i et program skrives på en bestemt måde, som gør det muligt at samle dem alle sammen i en po-fil. Denne fil kan så oversættes og oversættelserne kan begefter hives tilbage og bruges i programmet. Det betyder derfor, at alle de tekststrenge, som skal oversættes, er samlet i en enkelt fil (en po-fil) og for en oversætter er det derfor kun nødvendigt at lære hvordan denne fil ser ud, og ikke (sådan som nogle frygter) at skulle lære det programmeringssprog programmet er skrevet i. | Internationalisering og lokalisering håndteres indenfor fri software hovedsageligt ved hjælp af et program som hedder Gettext. Måden det fungerer på er, at alle de tekststrenge som skal bruges i et program skrives på en bestemt måde, som gør det muligt at samle dem alle sammen i en po-fil. Denne fil kan så oversættes og oversættelserne kan begefter hives tilbage og bruges i programmet. Det betyder derfor, at alle de tekststrenge, som skal oversættes, er samlet i en enkelt fil (en po-fil) og for en oversætter er det derfor kun nødvendigt at lære hvordan denne fil ser ud, og ikke (sådan som nogle frygter) at skulle lære det programmeringssprog programmet er skrevet i. | ||
+ | == En po-filssektion == | ||
En po-fil består af mange små sektioner af tekst (adskilt af en blank linje). Hver bid svarer til en tekststreng fra programmet. En sådan sektion har den følgende struktur: | En po-fil består af mange små sektioner af tekst (adskilt af en blank linje). Hver bid svarer til en tekststreng fra programmet. En sådan sektion har den følgende struktur: | ||
Linje 33: | Linje 34: | ||
har ændret sig, men kan med det samme se det, og derved lettere finde ud af hvordan man skal ændre sin oversættelse. | har ændret sig, men kan med det samme se det, og derved lettere finde ud af hvordan man skal ændre sin oversættelse. | ||
+ | == po-filhovedet == | ||
+ | Den første streng i en po-fil, som har en <code>msgid</code> som er | ||
+ | tom(""), er speciel. Dennne bliver brugt som en filhoved og bruges til | ||
+ | at indeholde forskellig information. Et filhoved bør se ud som dette | ||
+ | her fra gedit: | ||
+ | |||
+ | # Danish translations of gedit. | ||
+ | # Copyright (C) 1999-2007 Free Software Foundation, Inc. | ||
+ | # This file is distributed under the same license as the gedit | ||
+ | package. | ||
+ | # | ||
+ | # Birger Langkjer <birger.langkjer@image.dk>, 1999. | ||
+ | # Kenneth Christiansen <kenneth@gnome.org>, 1999, 2000. | ||
+ | # Keld Simonsen <keld@dkuug.dk>, 2000, 01. | ||
+ | # Ole Laursen <olau@hardworking.dk>, 2002, 03, 04, 05, 06. | ||
+ | # Marie Lund <marielund@post.cybercity.dk>, 2004. | ||
+ | # Martin Willemoes Hansen <mwh@sysrq.dk>, 2004. | ||
+ | # Kenneth Nielsen <k.nielsen81@gmail.com>, 2006, 2007. | ||
+ | # Ask Hjorth Larsen <asklarsen@gmail.com>, 2007. | ||
+ | # M.P. Rommedahl <lhademmor@gmail.com>, 2008 | ||
+ | # | ||
+ | # Husk at tilføje dig i credit-listen (besked id "translator_credits") | ||
+ | # | ||
+ | # Konventioner: | ||
+ | # | ||
+ | # plugin -> udvidelsesmodul | ||
+ | # snippet -> tekststump | ||
+ | # | ||
+ | msgid "" | ||
+ | msgstr "" | ||
+ | "Project-Id-Version: gedit.gnome-2-16\n" | ||
+ | "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" | ||
+ | "product=gedit&component=general\n" | ||
+ | "POT-Creation-Date: 2009-01-01 19:23+0000\n" | ||
+ | "PO-Revision-Date: 2008-10-04 11:20+0200\n" | ||
+ | "Last-Translator: Kenneth Nielsen <k.nielsen81@gmail.com>\n" | ||
+ | "Language-Team: Danish <dansk@dansk-gruppen.dk>\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" | ||
+ | |||
+ | I kommentaren til denne specialstreng findes først noget | ||
+ | ophavsretsinformation, her skal man som oversætter huske at opdatere | ||
+ | årstallet således at det stadig inkluderer man er i. Derefter følger | ||
+ | en liste af navne og e-mail-adresser for alle de oversættere som har | ||
+ | arbejdet på filen, her skal man selvfølgelig også skrive sig selv | ||
+ | på. Dette er også et godt sted at kigge hvis man af forskellige | ||
+ | årsager vil kontakte sidste oversætter. Her er så også en kommentar om | ||
+ | at man skal huske at skrive sig selv på "credit"-listen, mere om det | ||
+ | senere. Derefter følger en liste af konventioner som de forskellig | ||
+ | oversættere har lavet for denne oversættelse, husk at bruge og | ||
+ | opdatere denne. Efter kommentaren komme selve strengen som indeholder | ||
+ | forskellige former for specialinformation. Der er kun 3 af linjerne | ||
+ | som man behøver at bekymre sig om som oversætter. Man skal opdatere | ||
+ | linjen <code>Last-Translator</code> med sit eget navn og e-mail, samt | ||
+ | sikre sig at linjen <code>Language-Team</code> indeholder | ||
+ | informationen <code>Danish <dansk@dansk-gruppen.dk></code>, hvis den | ||
+ | ikke gøre det i forvejen. Derudover er der linjen | ||
+ | <code>Plural-Forms</code> som beksriver hvilke man flertalsformer man | ||
+ | har på det på sprog som filen oversættes til, mere om det senere. | ||
Versionen fra 2. jan 2009 kl. 13:51
Denne guide er beregnet til nye oversættere og forklarer skridt for skridt hvordan man laver en opdaterings af en eksisterende oversættelse eller starter en ny. Oversættelser opbevares og vedligeholdes i po-filer, så guiden vil starte med en forklaring af formatet af po-filer.
po-filer (Gettext)
Internationalisering og lokalisering håndteres indenfor fri software hovedsageligt ved hjælp af et program som hedder Gettext. Måden det fungerer på er, at alle de tekststrenge som skal bruges i et program skrives på en bestemt måde, som gør det muligt at samle dem alle sammen i en po-fil. Denne fil kan så oversættes og oversættelserne kan begefter hives tilbage og bruges i programmet. Det betyder derfor, at alle de tekststrenge, som skal oversættes, er samlet i en enkelt fil (en po-fil) og for en oversætter er det derfor kun nødvendigt at lære hvordan denne fil ser ud, og ikke (sådan som nogle frygter) at skulle lære det programmeringssprog programmet er skrevet i.
En po-filssektion
En po-fil består af mange små sektioner af tekst (adskilt af en blank linje). Hver bid svarer til en tekststreng fra programmet. En sådan sektion har den følgende struktur:
blank linje # oversætterkommentarer #. kommentarer trukket ud af kildekoden #: reference... #, mærker... #| msgid "tidligere uoversatte streng" msgid "uoversatte streng" msgstr "oversatte streng"
Linjen som begynder med msgid
er den uoversatte streng, altså den
streng i programmet som programmøren har markeret til
oversættelse. Linjen som begynder med msgstr
er den dertilhørenden
oversættelse og altså den linje som man som oversætter skal
udfylde. Alle linjerne som starter med #
er
kommentarer. Der er forskellige typer af kommentarer, som tjener
forskellige formål. De kan kendes fra hinanden alt efter hvilket tegn
som følger umiddelbart efter #
.
#
er en oversætterkommentar. Her kan oversætterne lave kommentarer om deres oversættelse, enten til sig selv eller til den næste oversætter af projektet. Disse er virkelig praktiske, hvis man har været nødt til at lave research til oversættelsen af en bestemt streng, for at sikre at den viden og det arbejde ikke går tabt.#.
er en programmørkommentar til oversætterne. Enhver kommentar som programmøren skriver umiddelbart før en streng som er markeret til oversættelse, vil blive trukket ud og tilføjet po-filen sådan så programmørerne har muligheden for at forklare meningen med en bestemt streng.#:
er kildekodereferencer. Her vil stå filnavne og linjenumre på de steder i kildekoden hvor den pågældende streng står.#,
er mærker som er tildelt den pågældende streng. Disse er som regel mærker, der beskriver hvilket programmeringssprog strengene kommer fra. Derudover kan strengene også tildeles mærketfuzzy
. Dette mærke bruges enten, hvis der i forvejen var en oversættelse, men originalstrengen eller positionen af denne ændrer sig i kildekoden, i det tilfælde vil mærket være sat automatisk af programmet som trækker oversættelser ud af kildekoden. Men mærket kan også bruges af oversætterne selv til at indikerer at arbejdet med denne streng ikke er færdigt. Streng med mærkerfuzzy
vil ikke blive brugt.#|
er en ny form for kommentar som bruges til at vise den gamle originalstreng hvis den er ændret i kildekoden. Dette er ment
som en service overfor oversætteren, således at når man komme til en fuzzy
streng, så behøver man ikke at gætte på hvordan den
har ændret sig, men kan med det samme se det, og derved lettere finde ud af hvordan man skal ændre sin oversættelse.
po-filhovedet
Den første streng i en po-fil, som har en msgid
som er
tom(""), er speciel. Dennne bliver brugt som en filhoved og bruges til
at indeholde forskellig information. Et filhoved bør se ud som dette
her fra gedit:
# Danish translations of gedit. # Copyright (C) 1999-2007 Free Software Foundation, Inc. # This file is distributed under the same license as the gedit package. # # Birger Langkjer <birger.langkjer@image.dk>, 1999. # Kenneth Christiansen <kenneth@gnome.org>, 1999, 2000. # Keld Simonsen <keld@dkuug.dk>, 2000, 01. # Ole Laursen <olau@hardworking.dk>, 2002, 03, 04, 05, 06. # Marie Lund <marielund@post.cybercity.dk>, 2004. # Martin Willemoes Hansen <mwh@sysrq.dk>, 2004. # Kenneth Nielsen <k.nielsen81@gmail.com>, 2006, 2007. # Ask Hjorth Larsen <asklarsen@gmail.com>, 2007. # M.P. Rommedahl <lhademmor@gmail.com>, 2008 # # Husk at tilføje dig i credit-listen (besked id "translator_credits") # # Konventioner: # # plugin -> udvidelsesmodul # snippet -> tekststump # msgid "" msgstr "" "Project-Id-Version: gedit.gnome-2-16\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=gedit&component=general\n" "POT-Creation-Date: 2009-01-01 19:23+0000\n" "PO-Revision-Date: 2008-10-04 11:20+0200\n" "Last-Translator: Kenneth Nielsen <k.nielsen81@gmail.com>\n" "Language-Team: Danish <dansk@dansk-gruppen.dk>\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"
I kommentaren til denne specialstreng findes først noget
ophavsretsinformation, her skal man som oversætter huske at opdatere
årstallet således at det stadig inkluderer man er i. Derefter følger
en liste af navne og e-mail-adresser for alle de oversættere som har
arbejdet på filen, her skal man selvfølgelig også skrive sig selv
på. Dette er også et godt sted at kigge hvis man af forskellige
årsager vil kontakte sidste oversætter. Her er så også en kommentar om
at man skal huske at skrive sig selv på "credit"-listen, mere om det
senere. Derefter følger en liste af konventioner som de forskellig
oversættere har lavet for denne oversættelse, husk at bruge og
opdatere denne. Efter kommentaren komme selve strengen som indeholder
forskellige former for specialinformation. Der er kun 3 af linjerne
som man behøver at bekymre sig om som oversætter. Man skal opdatere
linjen Last-Translator
med sit eget navn og e-mail, samt
sikre sig at linjen Language-Team
indeholder
informationen Danish <dansk@dansk-gruppen.dk>
, hvis den
ikke gøre det i forvejen. Derudover er der linjen
Plural-Forms
som beksriver hvilke man flertalsformer man
har på det på sprog som filen oversættes til, mere om det senere.