Hur man översätter Redmine till hvilket sprog som helst

5/26/2020
5 minutter
Lukáš Beňa.

En af Redmines største funktioner er at du enkelt kan oversætte denne projektledningsapplikation til hvilket sprog du vil.

Svarfriskrivning: Informationen i denne artikel gælder kun for Redmine og gælder ikke for Easy Redmine.

Når det gælder oversættelse af Redmine skal du oversætte nogle ting:

  • Den primære sprogfil: denne fil findes i den aktuelle grenen på kilden: /trunk/config /locales.
  • Wiki-værktøjsfilsprog: denne fil findes i kilden: trunk/public/javascripts/jstoolbar/lang
  • De 4 medfølgende hjælpefiler: Alle disse filer findes i kilden: trunk/public/help/ under en underkatalog som er namngiven efter sprogets subtagg

Som eksempel kan du sige, at du vil oversætte Redmine-applikationen til finsk (underordnet sprog defineres som "fi"). For at gøre det bør du følge følgende steg:


Steg

  • Trin 1: Kopier og klistra i /config/locales/en.yml til /config/locales/fi.yml
  • Trin 2: Kopier og skriv i /public/javascripts/jstoolbar/lang/jstoolbar-en.js til /public/javascripts/jstoolbar/lang/jstoolbar-fi.js
  • Trin 3: Kopier og skriv i /public/help/da/* til /public/help/fi/*.
  • Trin 4: Modifiera nyckeln general_lang_name med det nye sprogets fuldstændige navn i fi.yml (i dette efterår: general_lang_name: finsk)
  • Trin 5: Next, rensar du programcachen. Dette gør, at det nye sprog (finska) bliver tilgængeligt i Redmine-programvaran (eksempelvis, rake tmp: cache: clear)

Efter att ha följt ovanstående steg, fortsätt med følgende:

  • Trin 6: Oversätt hver sträng i jstoolbar-fi.js og fi.yml filer og oversæt indhold i de 4 hjælpefiler (wiki_syntax_markdown.html ,wiki_syntax_textile.html, wiki_syntax_detailed_markdown.html og wiki_syntax_detailed_textile.html)
  • Trin 7: Brug rake-oplysninger (dessa har skrevet nedenfor) for at testa din oversættelse. Du skal rette en eventuel fejl (om du får nogle) relaterede til sprogindstillinger.
  • Trin 8: Send i din oversættelse som en patch eller en almindelig fil (påkrævet indlogning). Vælg "Oversättning" fra kategorilisten.
  • Trin 9: Til sist og vigtigst af alt, skal du have dit oversættelsesarbejde!


Rake-oplysninger til test:

  • Hvis du bruger Ruby-version 1.9 eller højere:

rake-lokaliteter: check_parsing_by_psych

  • På alle Ruby-versioner:

rake-lokaliteter: check_interpolation

  • Hela testet (detta är valfritt): rivetest

Tænk på at "rake test" er ret lang tid og kører automatisk på CI (Continuous Integration) -servern.


Begrænser som gælder

Obs! Det findes visse begrænsninger som gælder

  • Alle filer skal være kodede i 8-bitars Unicode Transformation Format (UTF-8). Brug intet HTML (Hypertext Markup Language) -entiteter i oversatte strenge.
  • Kontroller, at dine filer ikke har en byte ordremærke (BOM). Du kan fjerne en byte order mark med følgende kommando: awk '{if(NR==1)sub(/^\xef\xbb\xbf/, "");print}' < oldfile > newfile
  • Du bør kun sende i opdateringsbaseret på nye oversættelsesfiler (du finder disse opdateringer i /config/locales)


Opdatering af sprogfiler

"en.yml" -filen fungerer som en primær sprogfil. Genom at köra rake lokaliteter: opdatering kan du kontrollere om den indeholder nye strängar. Dette kommando skal eventuelt kopieres til andre oversættelsesfiler (standardværdien er engelsk oversættelse).

I oversættelse Redmine kan du også validere i tredjepartsinsticksprogram for at støtte oversættelser som omfatter tilpasningsbar termer.


Anpasset terminologi over oversättningar i Redmine

  • Ange den eksisterende katalogen til config/overrides/ inom tillägget
  • Kopier og klistra i den nuværende 000.yml til ./XXX.yml. Her er "XXX" et trecifret nummer, der defineres prioriteringer for din definition: Ju højere nummer, desto højere prioritet. Det er bedst at undgå skapandet af 999.yml. Dette kommer til at grave mere plads for yderligere ændringer.
  • Filtrera ud de specifikke definitioner som du inte vil ændre. På denne måde kommer en fil med lavere prioritet for at kunne anvende sine ændringer på et element, som du ikke vil blande dig i.
  • Tillämpa dina egna definitioner på de återstående termerna


Stødjande termer som kan tilpasses i dit tillæg

  • Som vanligt, leveres oversättningsfiler under config/locales, for at fungere korrekt, når du intet har installeret tillägget. Hvis du ikke gør det bør du eksplicit kræve dette tillæg i din init.rb. Om du söker yderligere information, se i Redmine-dokumentationen
  • Kopier og klistra i dine sprogfiler under config/locales
  • For hver listede term som kan overstyras i 000.yml, ændre oversættelserne for at anvende en interpolering. Til eksempel, når du skriver ud "issue", bør du byta ud ordet med %{issue}. Derudover, når du skriver ud "issue(s)", bør du byta ud ordet med %{issue_or_issues}.
  • Du kan støtte et større antal overstyrbara termer i dit tillägg. Men som du også bruger det i bas-Redmine, skal du tilføje til interpolerede definitioner for Redmine-terminologier.

Som eksempel kan du støtte en ny %{my_term}-terminologi i dine sprogfiler. Hvis oversættelsen bruges i Redmine-er, bør du også inkludere dem i dine sprogfiler med korrekt ersättning af %{my_term} for at bekræfte en konsekvens i oversættelsen.

Prova Easy Redmine i en 30 dages gratis provperiode

Fuldstændige funktioner, SSL-beskyttelse, daglig sikkerhedskopior, og din geografiske plads