Oversættelse af Debians websider

For at gøre oversætternes arbejde så let som muligt, genereres siderne lidt anderledes end mange af dem du måske er vant til. Websiderne genereres faktisk ved hjælp af kildekode indeholdende wml-kommandoer. Der er separate mapper til hvert sprog.

Hvis du planlægger at begynde på en helt ny oversættelse af Debians websted, så se afsnittet om at starte på en ny oversættelse.

Oversættelse af individuelle sider

Vi bruger WML til adskillelse af en sides specifikke indhold og de elementer som er fælles for mange sider. Dette betyder at man skal redigere visse WML-filer fremfor HTML-sider. Brug Git til at hente den aktuelle kildekode. Du skal hente mindst to mapper, webwml/english/ og webwml/<sprog>/.

For at oversætte en enkelt side fra engelsk til dit sprog, skal den originale .wml-fil oversættes og placeres i det andet sprogs mappe. Den relative sti og navnet skal være det samme som i mappen english så linkene fortsat vil fungere.

Oversættelses-headere

Det anbefales også kraftigt at oversætteren føjer yderligere en linie til headerne efter den sidste #use-kommando, for at registrere den nøjagtige commit på den originale fil, som blev oversat, så vil opdateringer være nemmere). Linien ser således ud: #use wml::debian::translation-check translation="<git_commit_hash>"

Nogle oversætterhold anvender også denne linie til at angive den officielle oversætter af hver side. På den måde vil man automatisk modtage e-mails, når den engelske udgave af en side man vedligeholder er blevet opdateret og hvor oversættelsen nu skal opdateres. Til det formål tilføjes blot oversætterens navn som vedligeholder, sidst på #use-linien, så den kommer til at ligne denne: #use wml::debian::translation-check translation="<git_commit_hash>" maintainer="dit navn". copypage.pl gør dette automatisk, hvis du opsætter miljøvariablen DWWW_MAINT eller anvender kommandolinjeparameteret -m.

Header'en på websiderne kan nemt fremstilles ved hjælp af skriptet copypage.pl i webwmls root-mappe. Skriptet kopierer siden til dens rette placering, opretter mapper og makefiler om nødvendigt, samt tilføjer automatisk den nødvendige header. Du får en advarsel, hvis en kopieret side allerede findes i arkivet, uanset om det er fordi siden er blevet fjernet (fordi den var for gammel) eller fordi nogen allerede har commit'et en oversættelse og din lokale kopi af arkivet ikke er ajourført.

For at begynde at anvende copypage.pl skal du først opsætte filen language.conf, som skriptet anvender til at afgøre hvilket sprog du oversætter til. Filen behøver kun at indeholde en linje med sprogets navn. Du kan også opsætte sproget ved at anvende miljøvariablen DWWW_LANG og anvende miljøvariablen DWWW_MAINT til at angive dit navn, så det vil blive føjet til header'en på wml-filer genereret som oversættelsens vedligeholder. Der er også anden funktionalitet tilgængelig i skriptet, bare kør det uden parametre for at få hjælp.

Når du har kørt for eksempel ./copypage.pl fil.wml, oversættes den originale tekst i filen. Kommentarer i filen angiver hvorvidt der er ting som ikke skal oversættes; respektér dem. Foretag ingen unødvendige ændringer af formatteringen; hvis noget skal rettes, skal det formentlig også rettes i originalen.

Sideopbygning og -udgivelse

Da vi anvender indholdsforhandling ("content negotiation"), hedder HTML-filerne ikke fil.html, men fil.<sprog>.html, hvor <sprog> er to-bogstavskoden for sproget, jævnfør ISO 639 (for eksempel da for dansk).

Du kan generere HTML-filer fra WML ved at køre make file.<sprog>.html. Hvis det fungerer, kontroller da om syntaksen er helt korrekt med weblint file.<sprog>.html.

BEMÆRK: Websiderne bliver jævnligt automatisk genopbygget på serveren www-master, baseret på wml-kildekoden i Git. Processen er mestendels sikret mod fejl. Men hvis du overfører en defekt fil til din oversættelses øverste niveau (for eksempel index.wml på det øverste niveau), vil det standse opbygningsprocessen samt forhindre alle andre opdateringer af webstedet. Vær særligt omhyggelig med disse filer.

Når en side er klar til brug, kan du overføre den til Git. Hvis du har rettigheder til selv at gøre det, så push dine commits til webwml-git-arkivet; hvis ikke, sendes siden til en eller anden med skriveadgang til arkivet.

Begynd på en ny oversættelse

Hvis du vil begynde på en oversættelse af Debians websider til et nyt sprog, så send en e-mail (på engelsk) til os på webmaster@debian.org.

Først og fremmest skal du klone vores kildekodetræ, som beskrevet i side med introduktion til Git.

Når du har en Git-checkout, så begynd med at oprette en ny mappe på øverste niveau til dine oversættelser, på samme niveau som english/ og de andre sprog. Navnet på oversættelsesmappen skal være på engelsk og må kun skrives med små bogstaver (for eksempel german og ikke Deutsch).

Kopier filerne Make.lang og .wmlrc fra mappen english/ til den nye oversættelsesmappe. Disse filer er afgørende i opbygningen af din oversættelse fra WML-filerne. De er lavet således, at når du har kopieret dem til den nye sprogmappe, skal kun følgende ting ændres:

  1. Variablen LANGUAGE skal ændres i filen Make.lang.
  2. Variablerne CUR_LANG, CUR_ISO_LANG og CHARSET skal ændres i filen .wmlrc. Tilføj CUR_LOCALE til filen, hvis der er brug for den til sortering.
  3. Nogle sprog kan have brug for yderligere behandling for at håndtere tegnsæt. Dette kan gøres ved at anvende WMLs parametrene --prolog og --epilog. Brug variablerne WMLPROLOG og WMLEPILOG i Make.lang for at gøre dette.
  4. Variablen LANGUAGES skal ændres i filen webwml/Makefile på det øverste niveau, så dit sprog vil blive opbygget sammen med de andre på www.debian.org. Vi foretrækker at du overlader denne specifikke ændring til webmasterne, da du måske ikke er opmærksom på at din oversættelse ikke vil fungere når den lige er check'et ud fra VCS, hvilket kan få opbygningen af resten af webstedet.

Når det er gjort, tilføjes den følgende linie til en ny fil med navnet Makefile i denne mappe:

include $(subst webwml/dinsprogmappe,webwml/english,$(CURDIR))/Makefile

(Naturligvis skal dinsprogmappe udskiftes med navnet på dit sprogs mappe.)

I dit sprogs mappe oprettes nu en undermappe med navnet po, og den samme Makefile kopieres til denne undermappe (cp ./Makefile .).

I mappen po/ udføres make init-po for at fremstille det indledende sæt *.po-filer.

Nu hvor du har oprettet skelettet, kan du gå i gang med at tilføje dine oversættelser af vores fælles WML-mærker (tags) som anvendes i skabelonerne. De første skabeloner som du bør oversætte, er dem der viser sig på alle websiderne, såsom ord på sidehoveder, emnerne i navigationslinjen og i sidefoden.

Begynd med at oversætte i filen po/templates.xy.po. (hvor xy er dit sprogs to-bogstavskode). Til hver msgid "etellerandet" er der som en begyndelse en msgstr "" hvor du skal indsætte oversættelsen af etellerandet i dobbelte anførselstegn efter msgstr.

Du behøver ikke at oversætte alle strengene i alle .po-filerne, du kan nøjes med dem som dine aktuelt oversatte sider har brug for. For at undersøge om du skal oversætte en streng, kan du se kommentarerne i .po-filen lige over hver msgid-linie. Hvis filen der refereres til er i english/template/debian, bør du højst sandsynligt oversætte den. Hvis ikke kan du udsætte det til senere, når du oversætte den relevante del af websiderne som kræver det.

Formålet med po/-filer er at gøre det lettere for oversættere, så de (næsten) ikke er nødt til at redigere noget i mappen english/template/debian selv. Hvis du opdager at noget er galt med måden hvorpå et eller andet er opsat, template-mappen, så sørg for at problemet løses på en generel måde (du er velkommen til at bede en anden om at gøre det for dig), frem for at commit'e selve oversættelserne i skabelonerne, hvilket (normalt) vil være et stort problem.

Hvis du er i tvivl om hvorvidt du har gjort noget på den rigtige måde, så spørg, på engelsk, på postlisten debian-www før du commit'er til CVS.

Bemærk: hvis du opdager at det er nødvendigt at foretage andre ændringer, så send en e-mail, på engelsk, til debian-www, hvor du forklarer hvad du har ændret og hvorfor, således at problemet kan blive afhjulpet.

Når skabelonskelettet er færdigt, kan du begynde med at oversætte forsiden og de andre .wml-filer. For en liste over filer som først bør oversættes, se siden med tips. Oversæt *.wml-filerne som beskrevet øverst på denne side.

Genoplivelse af forældede oversættelser

Som beskrevet i hvordan man holder oversættelser ajour, kan forældede oversættelser af webstedet blive fjernet automatisk, når der er gået lang tid uden en opdatering.

Hvis du opdager, at nogle filer på et tidspunket er blevet fjernet, og du ønsker at foretage checkout af filen igen for at redigere den, kan du gennemsøge commithistorikken ved hjælp af Gits standardkommandoer.

Hvis den slettede fil for eksempel er deleted.wml, kan du søge i historikken ved at udføre:

   git log --all --full-history -- <sti/til/slettet/fil.wml>

Du kan finde den nøjagtigt commit, som fjernede filen du ønsker, sammen med commit'ets hashstreng. For at vise detaljerede oplysninger om de foretagne ændringer til filen i dette commit, kan du anvende underkommandoen git show:

   git show <COMMIT_HASH_STRING> -- <sti/til/slettet/fil.wml>

Hvis commit'en netop er den, der slettede filen, kan du gendanne filen til arbejdsrummet ved hjælp af git checkout:

   git checkout <COMMIT_HASH_STRING>^ -- <sti/til/slettet/fil.wml>

Når du gør det, skal du - selvfølgelig - opdatere filen før den checker den ind igen. Ellers kan den blive fjernet igen.

Resten af historien

Beskrivelsen ovenfor vil sikkert være nok til at du kan komme i gang. Bagefter bør du læse følgende dokumenter som giver mere detaljerede oplysninger og flere nyttige oplysninger.

Vi håber at du synes, at vi har gjort arbejdet med at oversætte så let som muligt. Som allerede nævnt, hvis du har nogen spørgsmål kan du stille dem, på engelsk, på postlisten debian-www.