Hvordan oversette Redmine til hvilket som helst språk
Ei av dei største fordelane med Redmine er at du enkelt kan oversette denne prosjektstyringsapplikasjonen til kva som helst språk du ønsker.

Ansvarsfraskrivelse: Informasjonen i denne artikkelen gjelder bare for Redmine og gjelder ikke for Easy Redmine.
Når det gjelder oversettelse av Redmine, må du oversette noen ting:
- Den primære språkfilen: denne filen ligger i gjeldende trunk på kilde: /trunk/config /locales.
- Wiki-verktøylinjespråkfilen: denne filen ligger i kilden: trunk/public/javascripts/jstoolbar/lang
- De 4 buntede hjelpefilene: Alle disse filene ligger i kilden: trunk/public/help/ under en undermappe som er oppkalt etter språkunderkoden
Som et eksempel, si at du vil oversette Redmine-applikasjonen til finsk (språkunderkoden for finsk er "fi"). For å gjøre dette, må du følge disse trinnene:
Trinn
- Trinn 1: Kopier /config/locales/en.yml til /config/locales/fi.yml
- Trinn 2: Kopier /public/javascripts/jstoolbar/lang/jstoolbar-en.js til /public/javascripts/jstoolbar/lang/jstoolbar-fi.js
- Trinn 3: Kopier /public/help/en/* til /public/help/fi/*.
- Trinn 4: Endre general_lang_name nøkkelen med det nye språkets fulle navn i fi.yml (i dette tilfellet: general_lang_name: Finsk)
- Trinn 5: Deretter, tøm programbufferen. Dette vil gjøre det nye språket (finsk) tilgjengelig i Redmine-programvaren (for eksempel, rake tmp: cache: clear)
Etter å ha fulgt de nevnte trinnene, fortsett med følgende:
- Trinn 6: Oversett hver streng i jstoolbar-fi.js og fi.yml filer og oversett innholdet i de 4 hjelpefilene (wiki_syntax_markdown.html ,wiki_syntax_textile.html, wiki_syntax_detailed_markdown.html og wiki_syntax_detailed_textile.html)
- Trinn 7: Bruk rake-oppgavene (disse er beskrevet nedenfor) for å teste oversettelsen din. Du må rette eventuelle feil (hvis du får noen) relatert til språkinnstillinger.
- Trinn 8: Send oversettelsen din som en patch eller en vanlig fil (pålogging kreves). Velg "Oversettelse" fra kategorilisten.
- Trinn 9: Til slutt og viktigst av alt, nyt oversettelsesarbeidet ditt!
Rake-oppgavene for testing:
- Hvis du bruker Ruby 1.9-versjonen eller nyere:
rake locales: check_parsing_by_psych
- På alle Ruby-versjoner:
rake locales: check_interpolation
- Full test (dette er valgfritt): rake test
Merk at "rake test" tar lang tid og kjører automatisk på CI (Continuous Integration) -serveren.
Begrensninger som gjelder
Merk at det er visse begrensninger som gjelder
- Alle filene må være kodet i 8-biters Unicode Transformation Format (UTF-8). I oversatte strenger må du ikke bruke HTML (Hypertext Markup Language) -enheter.
- 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 oppdateringer basert på nye oversettelsesfiler (du finner disse oppdateringene i /config/locales)
Oppdateringer til språkfiler
"en.yml" -filen fungerer som den primære språkfilen. Ved å kjøre rake locales: update kan du sjekke om den inneholder nye strenger. Denne kommandoen kopierer eventuelle nye strenger til andre oversettelsesfiler (standardverdien er engelsk oversettelse).
Ved oversettelse i Redmine kan du også aktivere tredjepartsplugins for å støtte oversettelser som omfatter tilpassbare termer.
Tilpassing av terminologi over oversettelser i Redmine
- Sett den eksisterende mappen til config/overrides/<locale> innenfor utvidelsen
- Kopier og lim inn den nåværende 000.yml til ./XXX.yml. Her er "XXX" et tretallsnummer som definerer prioriteringen til definisjonene dine: Jo høyere nummer, jo høyere prioritet. Det er best å unngå opprettelsen av 999.yml. Dette vil gi deg mer plass til ekstra oversettelser.
- Filtrer ut de spesifikke definisjonene du ikke ønsker å endre. På denne måten vil en fil med lavere prioritet kunne bruke sine endringer på elementene du ikke ønsker å blande deg inn i.
- På de gjenværende termene, bruk dine egne definisjoner
Støttede termer som kan tilpasses i utvidelsen din
- Som vanlig, gi oversettelsesfiler under config/locales, for å fungere skikkelig når du ikke har installert utvidelsen. Hvis du ikke gjør det, må du eksplisitt kreve denne utvidelsen i init.rb. Hvis du ønsker mer informasjon, sjekk ut Redmine-dokumentasjonen
- Kopier og lim inn dine lokaliseringsfiler under config/locales
- For hver oppført term som kan overskrives i 000.yml, endre oversettelsene for å bruke en interpolasjon. For eksempel, når du skriver ut "issue", bør du bytte ut ordet med %{issue}. Videre, når du skriver ut "issue(s)", bør du bytte ut ordet med %{issue_or_issues}.
- Du kan støtte et større antall term som kan overskrives i utvidelsen din. Men hvis du også bruker den i base-Redmine, må du legge til interpolerte definisjoner for Redmine-terminologier.
Som et eksempel kan du støtte en ny %{my_term} terminologi i dine lokaliseringsfiler. Hvis oversettelsen også brukes i Redmine-termer, må du inkludere dem i dine lokaliseringsfiler med riktig erstatning av %{my_term} for å sikre konsistens i oversettelsen.