Kuidas tõlkida Redmine'i mis tahes keelde

12/31/2023
5 minutter
Lukáš Beňa

Üks Redmine'i suurimaid omadusi on see, et saate selle projekti haldamise rakenduse hõlpsasti tõlkida mis tahes keelde, mida soovite.

Hoiatus: See artikkelis sisalduv teave kehtib ainult Redmine'i kohta ja ei kehti Easy Redmine'i kohta.

Kui tegemist on Redmine'i tõlkimisega, peate tõlkima mõned asjad:

  • Peamine keelefail: see fail asub praeguses tüves aadressil /trunk/config/locales.
  • Wiki tööriistariba keelefail: see fail asub aadressil /trunk/public/javascripts/jstoolbar/lang
  • 4 kimpus abifaili: kõik need failid asuvad aadressil /trunk/public/help/ alamkataloogis, mis on nimetatud keele alammärgi järgi

Näiteks öelge, et soovite tõlkida Redmine'i rakenduse soome keelde (keele alammärgistusregistri järgi määratletakse keel kui "fi"). Selleks järgige järgmisi samme:


Sammud

  • Samm 1: Kopeerige fail /config/locales/en.yml faili /config/locales/fi.yml
  • Samm 2: Kopeerige fail /public/javascripts/jstoolbar/lang/jstoolbar-en.js faili /public/javascripts/jstoolbar/lang/jstoolbar-fi.js
  • Samm 3: Kopeerige failid /public/help/en/* failidesse /public/help/fi/*.
  • Samm 4: Muutke failis fi.yml võtme general_lang_name väärtust uue keele täisnimega (selles näites: general_lang_name: Finnish)
  • Samm 5: Seejärel tühjendage rakenduse vahemälu. See muudab uue keele (soome) Redmine'i tarkvaras saadavaks (näiteks käsk rake tmp:cache:clear)

Pärast eespool nimetatud sammude järgimist jätkake järgmisega:

  • Samm 6: Tõlkige iga string failides jstoolbar-fi.js ja fi.yml ning tõlkige 4 abifaili sisu (wiki_syntax_markdown.html, wiki_syntax_textile.html, wiki_syntax_detailed_markdown.html ja wiki_syntax_detailed_textile.html)
  • Samm 7: Kasutage tõlke testimiseks rake ülesandeid (need on allpool üksikasjalikult kirjeldatud). Peate parandama kõik vead (kui neid ilmneb), mis on seotud keelepiirkondadega.
  • Samm 8: Esitage oma tõlge paigaldusfaili või tavalise failina (sisselogimine on vajalik). Kategooriate loendist valige "Tõlge".
  • Samm 9: Lõpuks ja kõige tähtsam, nautige oma tõlketööd!


Rake ülesanded testimiseks:

  • Kui kasutate Ruby versiooni 1.9 või uuemat:

rake-lokaliteter: check_parsing_by_psych

  • Kõigil Ruby versioonidel:

rake-lokaliteter:check_interpolation

  • Terviklik test (valikuline): rake test

Pidage meeles, et "rake test" võtab üsna kaua aega ja see käivitatakse automaatselt CI (pideva integreerimise) serveris.


Kehtestatud piirangud

Pange tähele, et kehtivad teatud piirangud

  • Kõik failid peavad olema 8-bitises Unicode'i teisendusvormingus (UTF-8) kodeeritud. Tõlgitud stringides ärge kasutage HTML-i (hüperteksti märgistuskeel) üksusi.
  • Veenduge, et teie failid ei sisalda baidijärjestuse märki (BOM). Baidijärjestuse märgi saate eemaldada selle käsu abil: awk '{if(NR==1)sub(/^\xef\xbb\xbf/, "");print}' < oldfile > newfile
  • Esitage värskendused ainult uute tõlkefailide põhjal (need värskendused leiate /config/locales)


Keeltefailide värskendused

"en.yml" fail toimib esmase keelefailina. Käivitades rake locales:update, saate kontrollida, kas selles on uusi stringe. See käsk kopeerib uued stringid teistesse tõlkefailidesse (vaikimisi väärtus on ingliskeelne tõlge).

Redmine'i tõlkimisel saate lubada ka kolmanda osapoole pistikprogramme, et toetada kohandatavate terminitega tõlkeid.


Kohandamine terminoloogia tõlgetes Redmine'is

  • Määra olemasolev kataloog pluginas asuvale teele config/overrides/<locale>
  • Kopeeri praegune 000.yml fail ./XXX.yml failiks. Siin "XXX" on kolmekohaline number, mis määrab sinu definitsioonide prioriteedi: Mida suurem number, seda kõrgem prioriteet. On soovitatav vältida 999.yml faili loomist. See võimaldab jätta rohkem ruumi täiendavatele ülekirjutustele.
  • Filtreeri välja need konkreetseid definitsioone, mida sa ei soovi muuta. Sellisel viisil saab madalama prioriteediga fail rakendada muudatusi elementidele, millega sa ei soovi sekkuda.
  • Rakenda ülejäänud terminitele oma definitsioonid


Toetatavad terminid, mida saab pluginas kohandada

  • Nagu tavaliselt, paku tõlkefailid config/locales kausta, et plugin korralikult toimiks, kui sa pole seda veel installinud. Kui sa seda ei tee, pead sa selle plugini oma init.rb failis selgesõnaliselt nõudma. Kui soovid täiendavat teavet, vaata Redmine'i dokumentatsiooni
  • Kopeeri oma tõlked config/locales kausta
  • Iga loetletud termini jaoks, mis on ülekirjutatav 000.yml failis, muuda tõlkeid, et rakendada interpolatsiooni. Näiteks kui sa printid "issue", peaksid sa selle sõna asendama %{issue}-ga. Lisaks, kui sa printid "issue(s)", peaksid sa selle sõna asendama %{issue_or_issues}-ga.
  • Sa võid oma pluginas toetada suuremat hulka ülekirjutatavaid termineid. Kuid kui sa kasutad seda ka põhiline Redmine'is, pead sa lisama interpolatsiooni definitsioonid Redmine'i terminoloogiatele.

Näiteks võid sa oma elokalis toetada uut %{my_term} terminoloogiat. Kui tõlget kasutatakse ka Redmine'i terminites, siis lisad need oma elokalisse, asendades %{my_term} õige asendusega, et tagada tõlke järjepidevus.

Proovige Easy Redmine'i 30 päeva tasuta prooviperioodi jooksul

Täielikud funktsioonid, SSL-kaitse, igapäevased varukoopiad, teie geolokatsioonis