Localisation/cs

Úvod

Lokalizace je obecně proces poskytování softwaru s vícejazyčným uživatelským rozhraním. Ve FreeCADu můžete nastavit jazyk uživatelského rozhraní v Upravit → Nastavení → Obecné. FreeCAD používá Qt k umožnění podpory více jazyků. Na systémech Unix/Linux FreeCAD ve výchozím nastavení používá aktuální nastavení jazyka vašeho systému.

Pomoc s překladem FreeCADu

Jednou z velmi důležitých věcí, kterou mohou uživatelé přispět k FreeCADu (pokud například nemají programátorské znalosti), je pomoc s překladem jeho různých částí (zdrojový kód, wiki, webové stránky, dokumentace atd.) do jiného jazyka. Zde jsou způsoby, jak to udělat.

Překlad zdrojového kódu FreeCADu

FreeCAD využívá kolaborativní online překladatelský systém třetí strany s názvem Crowdin.

Jedná se o proprietární software, který je však zdarma pro projekty FOSS. Níže jsou uvedeny pokyny k jeho použití:

Pokud se aktivně podílíte na překladu FreeCADu a chcete být informováni před vydáním nové verze, abyste měli čas zkontrolovat svůj překlad, přihlaste se do jednoho z překladatelských týmů Crowdin FreeCAD.

Poznámka: Podrobnosti o tom, jak používat Crowdin, najdete na stránce Správa Crowdin.

Překlad externích pracovních ploch

Navštivte Překlad externího pracovního prostředí.

Předvolby FreeCADu pro překladatele

Počínaje verzí FreeCAD 0.20 lze následující proměnné ručně přidat do sekce BaseApp/Preferences/General souboru user.cfg, aby pomohly při vývoji nových překladů:

Další jazykové doménové záznamy - pro přidání zcela nových jazyků do FreeCADu, které nejsou v současné době zdrojovým kódem podporovány, můžete použít tuto uživatelskou předvolbu a přidat ji do seznamu dostupných jazyků. Formát jazyků je "Language Name"="code"; například:

<FCText Name="AdditionalLanguageDomainEntries">"Esperanto"="eo";"French"="fr";</FCText>

Přídavný překladový adresář - přidejte další adresář, ve kterém bude FreeCAD hledat soubory *.qm. Toto umístění bude mít přednost před $userAppDataDir/translations a $resourceDir/translations. Například:

<FCText Name="AdditionalTranslationsDirectory">C:/Users/FreeCADUser/TestTranslations</FCText>

Překlad wiki FreeCADu

Před úpravou přeložitelného textu a značek pro překlad si přečtěte tuto stránku, která obsahuje důležité informace o správném postupu.

Tato wiki obsahuje mnoho obsahu, z něhož většina tvoří příručku. Dokumentaci můžete procházet od Hlavní stránky nebo se podívat do uživatelské příručky Obsah online nápovědy.

Chcete-li překládat wiki, musíte mít oprávnění k úpravám wiki; viz Jak mohu získat oprávnění k úpravám na wiki?.

Měli byste také mít dostatečné znalosti o wiki značkách a dodržovat obecné pokyny pro stylování popsané na Wiki stránkách.

Rozšíření pro překlad Mediawiki

Když se wiki přestěhovala ze SourceForge, nainstaloval Yorik rozšíření MediaWiki pro překlady, které usnadňuje překládání stránek. Výhodou rozšíření pro překlad je, že nyní lze překládat názvy stránek, sledovat překlady, dostávat upozornění na aktualizace původní stránky a udržovat překlady v synchronizaci s původní anglickou stránkou.

Tento nástroj je popsán v Help:Extension:Translate a je součástí MediaWiki Language Extension Bundle.

Chcete-li rychle začít s přípravou stránky k překladu, přečtěte si prosím Příklad překladu stránky. K aktivaci překladového systému je třeba celou stránku obalit dvojicí značek:

<translate> ... </translate>

Stránka musí být také označena pro překlad.

Chcete-li vidět příklad toho, jak překladový nástroj funguje, navštivte Hlavní stránku. V horní části uvidíte automaticky vygenerovanou jazykovou lištu. Klikněte na Deutsch (Němčina) a dostanete se na stránku Main Page/de. Hned pod názvem "Hauptseite" (v češtině "Hlavní stránka") můžete přečíst Tato stránka je přeloženou verzí stránky Hlavní stránka a překlad je dokončen z XX %, kde XX představuje aktuální procento překladu. Kliknutím na „Přeložit“ v horní části stránky spustíte překladový nástroj, pomocí kterého můžete aktualizovat, opravit a zkontrolovat stávající překlad.

Pokud přejdete na hlavní stránku, zjistíte, že stránku již nelze přímo upravovat kliknutím na značky [Upravit] a horní odkaz "Upravit" byl nahrazen odkazem "Přeložit", který otevírá překladový nástroj.

Při přidávání nového obsahu by měla být nejprve vytvořena anglická stránka, která se poté přeloží do jiného jazyka. Pokud někdo chce změnit nebo přidat obsah na stránce, měla by být nejprve upravena anglická stránka.

Pokud si nejste jisti, jak postupovat při překladu, neváhejte požádat o pomoc na Development → Wiki subfóru nebo na specifickém jazykovém subfóru v FreeCAD fóru.

Důležité poznámky

Každý uživatel wiki, který má oprávnění "Editor", může spustit překladový nástroj a psát, ukládat a kontrolovat překlady.

Stránky k překladu však mohou označit pouze uživatelé s oprávněním "Administrator". Stránka, která není označena k překladu, nebude využívat rozšíření pro překlad a nebude správně synchronizována s anglickými informacemi.

Levý postranní panel je také přeložitelný, ale pouze administrátoři mohou tento prvek webu upravovat. Postupujte podle pokynů na stránce Lokalizace postranního panelu.

Při prvním přepnutí stránky do nového překladového systému dojde ke ztrátě všech starých "manuálních" překladů. Chcete-li překlad obnovit, měli byste před přepnutím uložit offline kopii starého textu. Poté můžete tento starý přeložený text použít k vyplnění překladových jednotek v novém systému. Můžete také otevřít dřívější verzi z historie a získat tak starý text. To je nutné provést pro každý jazyk, ve kterém byla stránka přeložena.

Překlad dokumentace FreeCADu

Podle obecného konsensu je referenční stránkou ve wiki stránka v angličtině, která by měla být vytvořena jako první. Pokud chcete změnit nebo přidat obsah na stránku, měli byste to nejprve udělat na anglické stránce a teprve po dokončení aktualizace přenést úpravy na přeloženou stránku.

Pokyny pro staré překlady

Tyto pokyny slouží pouze pro historické účely. Překlady by měly používat nový systém s výše popsaným rozšířením #Mediawiki Translation Extension.

So the first step is to check if the manual translation has already been started for your language (look in the left sidebar, under "manual").
If not, head to the forum and say that you want to start a new translation, we'll create the basic setup for the language you want to work on.
You must then gain wiki edit permission.
If your language is already listed, see what pages are still missing a translation (they will be listed in red). The technique is simple: go into a red page, and copy/paste the contents of the corresponding English page, and start translating.
Do not forget to include all the tags and templates from the original English page. Some of those templates will have an equivalent in your language (for example, there is a French Docnav template called Docnav/fr). You should use a slash and your language code in almost all the links. Look at other already translated pages to see how they did it.
Add a slash and your language code in the categories, like [[Category:Developer Documentation/fr]]
And if you are unsure, head to the forums and ask people to check what you did and tell you if it's right or not.
Four templates are commonly used in manual pages. These 4 templates have localized versions (Template:Docnav/fr, Template:fr, etc...)

  • Template:GuiCommand : is the Gui Command information block in upper-right of command documentation.
  • Template:Docnav : it is the navigation bar at the bottom of the pages, showing previous and next pages.
  • Template:Userdocnavi : gives direct links to the main base pages

Page Naming Convention
Please take note that, due to limitations in the Sourceforge implementation of the MediaWiki engine, we require that your pages all keep their original English counterpart's name, appending a slash and your language code. For example, the translated page for About FreeCAD should be About Freecad/es for Spanish, About FreeCAD/pl for polish, etc. The reason is simple: so that if translators go away, the wiki's administrators, who do not speak all languages, will know what these pages are for. This will facilitate maintenance and avoid lost pages.
If you want the Docnav template to show linked pages in your language, you can use redirect pages. They are basically shortcut links to the actual page. Here is an example with the French page for About FreeCAD.

  • The page About FreeCAD/fr is the page with content
  • The page À propos de FreeCAD contains this code:
#REDIRECT [[About_FreeCAD/fr]]
  • In the About FreeCAD/fr page, the Docnav code will look like this:
{{docnav/fr|[[Online_Help_Startpage/fr|Bienvenue dans l'aide en ligne de FreeCAD]]|[[Feature_list/fr|Fonctionnalités]]}}

The page "Bienvenue dans l'aide en ligne de FreeCAD" redirects to Online_Help_Startpage/fr, and the page "Fonctionnalités" redirects to Feature_list/fr.

Překlad webové stránky FreeCADu

Překlad webových stránek FreeCADu se nyní provádí prostřednictvím Crowdin. Soubor má název homepage.po.

Vývoj – Jak přidat lokalizaci

Tato sekce je určena pro vývojáře, kteří chtějí do svého kódu přidat lokalizaci.

Příprava modulů FreeCAD/master pro překlad

Součástí procesu překladu FreeCADu jsou následující kroky:

Všechny výše uvedené kroky zajišťují tzv. „překladové skripty“, které správce projektu pravidelně spouští.

Příprava modulu pro překlad je poměrně jednoduchá. Nejprve se ujistěte, že v adresáři myModule/Gui/Resources existuje složka translations. Poté v této složce otevřete okno terminálu (nebo jeho ekvivalent ve Windows či macOS) a zadejte následující příkaz:

lupdate -ts myModule.ts

Tím se vytvoří prázdný soubor s překladem. Poté je potřeba zajistit aktualizaci překladových skriptů podle postupu uvedeného v tomto pull requestu.

Z pohledu vývojáře je tím celý proces dokončen. O vše ostatní se postará automatizovaný proces: správce projektu provede extrakci textových řetězců, překladatelé je přeloží a správce následně stáhne hotové překlady a aktualizuje hlavní větev (master) FreeCADu.

Příprava modulu nebo makra třetí strany pro překlad

Moduly a makra třetích stran se překládají velmi podobným způsobem. Rozdíl je v tom, že část postupu musíte provést sami.

Podrobnosti popisuje tato diskuse na fóru: [1].

Aktualizace: viz Překlad externího pracovního prostředí.

Automatizace aktualizací překladů z Crowdinu

V současnosti správci projektu FreeCAD používají rozhraní Crowdin API prostřednictvím skriptů Crowdin pro odesílání překladů do Crowdinu a jejich následné stahování zpět do repozitáře GitHub. Rozhraní Crowdin API umožňuje správcům FreeCADu automatizovat jednotlivé části pracovního postupu při správě překladů. Další informace naleznete v dokumentaci k rozhraní Crowdin API.

Související stránky

Skriptování

Viz také: Základy skriptování ve FreeCADu.

Chcete-li získat slovník jazyků podporovaných uživatelským rozhraním FreeCADu, použijte metodu supportedLocales modulu FreeCADGui.

locales = FreeCADGui.supportedLocales()

Po spuštění bude proměnná locales obsahovat:

{'English': 'en', 'Afrikaans': 'af', 'Arabic': 'ar', 'Basque': 'eu', 'Catalan': 'ca', 'Chinese Simplified': 'zh-CN', 'Chinese Traditional': 'zh-TW', 'Croatian': 'hr', 'Czech': 'cs', 'Dutch': 'nl', 'Filipino': 'fil', 'Finnish': 'fi', 'French': 'fr', 'Galician': 'gl', 'German': 'de', 'Hungarian': 'hu', 'Indonesian': 'id', 'Italian': 'it', 'Japanese': 'ja', 'Kabyle': 'kab', 'Korean': 'ko', 'Lithuanian': 'lt', 'Norwegian': 'no', 'Polish': 'pl', 'Portuguese': 'pt-PT', 'Portuguese, Brazilian': 'pt-BR', 'Romanian': 'ro', 'Russian': 'ru', 'Slovak': 'sk', 'Slovenian': 'sl', 'Spanish': 'es-ES', 'Swedish': 'sv-SE', 'Turkish': 'tr', 'Ukrainian': 'uk', 'Valencian': 'val-ES', 'Vietnamese': 'vi'}

Chcete-li zjistit aktuální jazyk uživatelského rozhraní, použijte metodu getLocale téhož modulu:

locale = FreeCADGui.getLocale()

Je-li aktuálním jazykem angličtina, bude proměnná locale obsahovat:

'English'

Chcete-li získat odpovídající kód jazyka, můžete použít:

locale = FreeCADGui.supportedLocales()[Gui.getLocale()]

Je-li aktuálním jazykem angličtina, bude výsledkem:

'en'

Chcete-li nastavit aktuální jazyk uživatelského rozhraní, použijte metodu setLocale téhož modulu. Jako parametr můžete zadat buď název jazyka, nebo jeho jazykový kód:

FreeCADGui.setLocale('Russian')
FreeCADGui.setLocale('ru')