Hvordan oversette Redmine til hvilket som helst sprog

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

Ei av dei største fordelane med Redmine er at du enkelt kan oversette denne projektstyringsapplikationen til kva som helst sprog du ønsker.

Ansvarsfraskrivelse: Informationer i denne artikel gælder kun for Redmine og gælder ikke for Easy Redmine.

Når det gælder oversættelse af Redmine, må du oversætte noget:

  • Den primære sprogfilen: denne fil ligger i gjeldende trunk på kilden: /trunk/config /locales.
  • Wiki-værktøjlinjesprogfilen: denne fil ligger i kilden: trunk/public/javascripts/jstoolbar/lang
  • De 4 buntede hjælpefiler: Alle disse filer ligger i kilden: trunk/public/help/ under en undermappe som er oppkalt efter sprogunderkoden

Som et eksempel, du vil oversætte Redmine-applikationen til finsk (sprogunderkoden for finsk er "fi"). For at gøre dette, må du følge disse trin:


Trin

  • Trin 1: Kopier /config/locales/en.yml til /config/locales/fi.yml
  • Trin 2: Kopier /public/javascripts/jstoolbar/lang/jstoolbar-en.js til /public/javascripts/jstoolbar/lang/jstoolbar-fi.js
  • Trin 3: Kopier /public/help/en/* til /public/help/fi/*.
  • Trin 4: Endre general_lang_name nøglen med det nye sprogets fulde navn i fi.yml (i dette tilfælde: general_lang_name: Finsk)
  • Trin 5: Deretter, tøm programbufferen. Dette vil gøre det nye sproget (finsk) tilgængeligt i Redmine-programvaren (for eksempel rake tmp: cache: clear)

Etter å ha fulgt de nævnte trinnene, fortset med følgende:

  • Trin 6: Overset hver streng i jstoolbar-fi.js og fi.yml filer og overset indholdet i de 4 hjælpefilene (wiki_syntax_markdown.html ,wiki_syntax_textile.html, wiki_syntax_detailed_markdown.html og wiki_syntax_detailed_textile.html)
  • Trin 7: Brug rake-oppgavene (disse er beskrevet nedenfor) for at teste oversættelsen din. Du må rette enhver fejl (hvis du får nogen) relateret til sprogindstillinger.
  • Trin 8: Send oversettelsen din som en patch eller en almindelig fil (pålogging kræves). Vælg "Oversættelse" fra kategorilisten.
  • Trin 9: Til slut og vigtigst af alt, nyt oversættelsesarbejdet!


Rake-opgaverne til test:

  • Hvis du bruger Ruby 1.9-versionen eller nyere:

rake-lokaliteter: check_parsing_by_psych

  • På alle Ruby-versioner:

rake-lokaliteter: check_interpolation

  • Fuld test (dette er valgfritt): rivetest

Merk ved "rake test" for lang tid og kører automatisk på CI (Continuous Integration) -serveren.


Begrensninger som gælder

Merk at det er visse begrensninger som gælder

  • Alle filer må være kodet i 8-biters Unicode Transformation Format (UTF-8). Jeg oversatte strenger må du ikke bruge HTML (Hypertext Markup Language) -enheder.
  • Sørg for at filene dine ikke har en byteordenmarkør (BOM). Du kan fjerne en byteordenmarkør med denne kommandoen: awk '{if(NR==1)sub(/^\xef\xbb\xbf/, "");print}' < oldfile > newfile
  • Du bør bare sende opdateringer baseret på nye oversættelsesfiler (du finder disse opdateringer i /config/locales)


Opdateringer til sprogfiler

"en.yml" -filen fungerer som den primære sprogfilen. Ved at køre rake-lokaliteter: opdatering kan du tjekke om den indeholder nye stærkere. Denne kommandoen kopierer enhver ny strenger til andre oversættelsesfiler (standardværdien er engelsk oversættelse).

Ved oversættelse af Redmine kan du også aktivere støttestøtteplugins for at oversætte som omfatter tilpassbare termer.


Tilpassing af terminologi over oversettelser i Redmine

  • Indstil den eksisterende mappe til config/overrides/ indenfor udvidelsen
  • Kopier og lim inn den nåværende 000.yml til ./XXX.yml. Her er "XXX" og tretalsnummer som definerer prioriteringer til definitionen af ​​dine: Jo højere nummer, jo højere prioritet. Det er bedst at undgå oprettelsen af ​​999.yml. Dette vil give dig mere plads til ekstra oversættelser.
  • Filtrerer ud af de specifikke definitioner, du ikke ønsker at ændre. På denne måde vil en fil med lavere prioritet kunne bruge sine ændringer på elementer, du ikke ønsker at blande dig i.
  • På de gjenværende termene, brug dine egne definitioner


Støttede termer som kan tilpasses i udvidet din

  • Som sædvanlig, gi oversættelsesfiler under config/locales, for at fungere ordentligt, når du ikke har installeret udvidelsen. Hvis du ikke gør det, må du eksplisitt kræve denne udvidelse i init.rb. Hvis du ønsker mere information, skal du tjekke Redmine-dokumentationen
  • Kopier og lim ind dine lokaliseringsfiler under config/locales
  • For hver opført term som kan overskrives i 000.yml, ændre oversættelsene for at bruge en interpolation. For eksempel, når du skriver ud "issue", bør du bytte ud ordet med %{issue}. Videre, når du skriver ud "issue(s)", bør du bytte ud ordet med %{issue_or_issues}.
  • Du kan støtte et større antal termer, som kan overskrives i udvidet din. Men hvis du også bruger den i base-Redmine, må du legge til interpolerte definitioner for Redmine-terminologier.

Som et eksempel kan du støtte en ny %{my_term} terminologi i din lokaliseringsfiler. Hvis oversættelsen også bruges i Redmine-termer, må du også dem i dine lokaliseringsfiler med korrekt erstatning af %{my_term} for at sikre konsistens i oversættelsen.

Prøv Easy Redmine i en 30-dagers gratis prøveperiode

Fuld funktionalitet, SSL-beskyttet, daglig sikkerhedskopiering, i din geografiske placering