Jak přeložit Redmine do jakéhokoliv jazyka.

5/26/2020
5 minut
Łukasz Beňa.

Jednou z největších výhod Redmine je, že můžete snadno přeložit tuto aplikaci do správu projektuů do jakéhokoli jazyka, který si přejete.

Upozornění: Informace v tomto článku se vztahují pouze na Redmine i nowy pro Easy Redmine.

Pokud jde o překlad Redmine, musíte přeložit několik věcí:

  • Hlavní jazykový soubor: tento soubor se nachází v aktuálním trunku na adres: /trunk/config/locales.
  • Pasek narzędzi wiki Jazykový soubor: tento soubor se nachází na adres: trunk/public/javascripts/jstoolbar/lang
  • 4 balíčky nápovědy: Všechny tyto soubory se nacházejí na adres: trunk/public/help/ v podadresáři, který je pojmenován podle jazykového subtagu.

Jako příklad uvedeme, že chcete-li přeložit aplikaci Redmine do finštiny (jazyk je definován jako "fi" v registru jazykových subtagů), musíte postupovat následovně:


Kroków

  • krok 1: Zkopírujte soubor /config/locales/en.yml do souboru /config/locales/fi.yml
  • krok 2: Zkopírujte soubor /public/javascripts/jstoolbar/lang/jstoolbar-en.js do souboru /public/javascripts/jstoolbar/lang/jstoolbar-fi.js
  • Krok 3: Zkopírujte soubory /public/help/en/* do souborů /public/help/fi/*.
  • Krok 4: Upravte klíč general_lang_name v souboru fi.yml na nový název jazyka (v tomto případě: general_lang_name: fiński)
  • Krok 5: Dále vymažte aplikacja pamięci podręcznej. Tím se nový jazyk (finština) stane dostupným v softwaru Redmine (například pomocí příkazu rake tmp:cache:clear)

Poprovedení výše uvedených kroků postupujte následovně:

  • Krok 6: Přeložte každý řetězec v souborech jstoolbar-fi.js a fi.yml a přeložte obsah 4 souborů nápovědy (wiki_syntax_markdown.html, wiki_syntax_textile.html, wiki_syntax_detailed_markdown.html i wiki_syntax_detailed_textile.html)
  • Krok 7: Použijte rake úlohy (ty jsou podrobně popsány níže), abyste otestovali svůj překlad. Musíte opravit všechny chyby (pokud se vyskytnou) související s lokalizací.
  • Krok 8: Odevzdejte svůj překlad ve formě záplaty nebo běžného souboru (je nutné se přihlásit). Z kategorii vyberte "Překlad".
  • Krok 9: Nakonec a nejdůležitější, užijte si svou práci na prekladu!


Rake úlohy pro testování:

  • Pokud používáte verzi Ruby 1.9 nebo vyšší:

lokalizacje prowizji:check_parsing_by_psych

  • Na všech verzích Ruby:

ustawienia regionalne rake:check_interpolation

  • Celkový test (toto je volitelné): test prowizji

Mějte na paměti, že „rake test” trvá poměrně dlouho a automaticky se spouští na serveru CI (Continuous Integration).


Ograniczenia

Všimněte si, že jsou zde určitá omezení:

  • Zaawansowany kod musi być używany w 8-bitowym formacie Unicode Transformation Format (UTF-8). V přeložených řetězcích nepoužívejte Jednostka HTML (Hypertext Markup Language).
  • Ujistěte se, že vaše soubory neobsahují značku pořadí bajtů (BOM). Značku pořadí bajtů můžete odstranit pomocí tohoto příkazu: awk '{if(NR==1)sub(/^\xef\xbb\xbf/, "");print}' < oldfile > newfile
  • Měli byste odesílat Updateace pouze na základě nových souborů překladu (tyto Updateace najdete v /config/locales)


Aktualizace jazykových souborů

Soubor "en.yml" slouží jako hlavní jazykový soubor. Spuštěním příkazu rake locales:update můžete zkontrolovat, zda obsahuje nové řetězce. Tento příkaz zkopíruje nové řetězce do ostatních souborů překladu (výchozí hodnota je anglický překlad).

Při překladu v Redmine můžete také povolit podporu překladů třetích stran, které zahrnují upravitelné terminíny.


Přizpůsobení terminologií překladům v Redmine

  • Nastavte Exitující adresář na config/overrides/ v rámci pluginu
  • Zkopírujte aktuální 000.yml do ./XXX.yml. Zde "XXX" je tříčíselné číslo, které určuje prioritu vašich definic: čím vyšší číslo, tím vyšší priorita. Nejlepší je vyhnout se vytváření 999.yml. To vám umožní nechat více místa pro další přepsání.
  • Filtrujte ty konkrétní definice, které nechcete upravovat. Tímto způsobem bude moci soubor s nižší prioritou aplikovat své úpravy na prvky, se kterými nechcete manipulovat.
  • Na zbývajících terminínech aplikujte své vlastní definicja


Podporované termíny, které lze přizpůsobit v pluginu

  • Stejně jako obvykle poskytněte překladové soubory w adresáři config/locales, aby wtyczka správně fungoval, pokud jej nemáte nainstalovaný. Pokud to neuděláte, musisz użyć wtyczki jawnej, vyžadovat w init.rb. Pokud hledáte další informace, podívejte se do dokumentace Redmine
  • Zkopírujte své lokalizace do adresáře config/locales
  • Pro každý uvedený terminín, který lze přepsat v 000.yml, změňte překlady tak, aby se aplikovala interpolace. Například při tisku problému byste měli slovo vyměnit za %{issue}. Kromě toho, při tisku problémů, byste měli slovo vyměnit za %{issue_or_issues}.
  • Můžete podporovat větší počet přepsatelných termínů ve svém pluginu. Pokud jej však používáte také v základním Redmine, musi znaleźć interpolované definicję dla terminologii Redmine.

Jako příklad můžete podporovat novou terminologii %{my_term} ve svých lokalizacích. Pokud se překlad používá také v terminologiích Redmine, musíte je zahrnout do svých lokalizací s korektní náhradou %{my_term}, aby byla zajištěna konzistence v překladu.

Vyzkoušejte Easy Redmine na 30 dni zdarma

Kompletní funkce, chráněno protokolem SSL, denní zálohování, ve vaší lokalitě.