Localisation/ro: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
 
(21 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<languages/>
<languages/>

<div class="mw-translate-fuzzy">
{{docnav|Branding|Extra python modules}}
{{docnav|Branding|Extra python modules}}
</div>


{{TOCright}}

<span id="Overview"></span>
<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
'''Localizarea''' este, în general, procesul de furnizare a unui Software cu o interfață de utilizare în mai multe limbi. În FreeCAD puteți seta limba interfeței de utilizator sub '' Editare → Preferințe → Aplicație ''. FreeCAD utilizează [[wikipedia: Qt (toolkit) | Qt]] pentru a activa suportul pentru mai multe limbi. Pe sistemele Unix / Linux, FreeCAD utilizează implicit setările locale locale ale sistemului.
'''Localizarea''' este, în general, procesul de furnizare a unui Software cu o interfață de utilizare în mai multe limbi. În FreeCAD puteți seta limba interfeței de utilizator sub '' Editare → Preferințe → Aplicație ''. FreeCAD utilizează [[wikipedia: Qt (toolkit) | Qt]] pentru a activa suportul pentru mai multe limbi. Pe sistemele Unix / Linux, FreeCAD utilizează implicit setările locale locale ale sistemului.
</div>
</div>


'''Localisation''' is in general the process of providing a Software with a multiple language user interface. In FreeCAD you can set the language of the user interface under {{MenuCommand|Edit → Preferences → General}}. FreeCAD uses [[wikipedia:Qt (toolkit)|Qt]] to enable multiple language support. On Unix/Linux systems, FreeCAD uses the current locale settings of your system by default.

<span id="Helping_to_translate_FreeCAD"></span>
== Ajutor în traducere FreeCAD ==
== Ajutor în traducere FreeCAD ==


<div class="mw-translate-fuzzy">
Unul dintre lucrurile foarte importante pe care utilizatorii le poate contribui la FreeCAD (dacă, de exemplu, nu au abilități de programare) este de a ajuta la traducerea diferitelor sale aspecte (cod sursă, wiki, site web, documentație etc.) într-o altă limbă. Iată modalitățile de a face acest lucru
Unul dintre lucrurile foarte importante pe care utilizatorii le poate contribui la FreeCAD (dacă, de exemplu, nu au abilități de programare) este de a ajuta la traducerea diferitelor sale aspecte (cod sursă, wiki, site web, documentație etc.) într-o altă limbă. Iată modalitățile de a face acest lucru
</div>


<span id="Translate_the_FreeCAD_source_code"></span>
<div class="mw-translate-fuzzy">
== Traduceți codul sursă al FreeCAD ==
== Traduceți codul sursă al FreeCAD ==
 FreeCAD folosește un sistem de traducere on-line, bazat pe colaborare, numit [https://crowdin.net Crowdin]. Este software proprietate, dar gratuit pentru proiectele FOSS. Mai jos sunt instrucțiuni despre modul de utilizare:
 FreeCAD folosește un sistem de traducere on-line, bazat pe colaborare, numit [https://crowdin.net Crowdin]. Este software proprietate, dar gratuit pentru proiectele FOSS. Mai jos sunt instrucțiuni despre modul de utilizare:
</div>

FreeCAD utilizes a third party collaborative on-line translation system called [https://crowdin.net Crowdin].

[[File:Logo-crowdin.png|320px]]

It is proprietary software but free to [https://en.wikipedia.org/wiki/Free_and_open-source_software FOSS] projects. Below are instructions on how to use it:


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
Line 23: Line 43:
Dacă participați în mod activ la traducerea FreeCAD și doriți să fiți informat înainte de lansarea următoarei versiuni, atunci când este gata să fie lansată, deci este timpul să vă revizuiți traducerea, vă rugăm să vă abonați la una dintre echipele de traducere Crowdin FreeCAD.
Dacă participați în mod activ la traducerea FreeCAD și doriți să fiți informat înainte de lansarea următoarei versiuni, atunci când este gata să fie lansată, deci este timpul să vă revizuiți traducerea, vă rugăm să vă abonați la una dintre echipele de traducere Crowdin FreeCAD.


{{Emphasis|Note:}} Details on how to use crowdin can be found on the [[Crowdin_Administration|Crowdin Administration]] page.

== Translating external workbenches ==

Visit [[Translating_an_external_workbench|Translating an external workbench]].

== FreeCAD Preferences for Translators ==

Starting with FreeCAD 0.20, the following variables can be manually added to the BaseApp/Preferences/General section of the user.cfg file to assist with the development of new translations:

'''AdditionalLanguageDomainEntries''' - to add entirely new languages to FreeCAD that are not currently supported by the source code, you can use this user preference to add to the list of available languages. The format of the languages is "Language Name"="code"; for example:

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

'''AdditionalTranslationsDirectory''' - add an additional directory for FreeCAD to search for *.qm files. This location will take precedence over $userAppDataDir/translations and $resourceDir/translations. For example:

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

<span id="Translate_the_FreeCAD_wiki"></span>
== Tranducere FreeCAD wiki ==
== Tranducere FreeCAD wiki ==


<div class="mw-translate-fuzzy">
Acest wiki găzduiește o multitudine de conținuturi, majoritatea cărora construiesc manualul. Puteți căuta documentația pornind de la [[Main Page]], or have a look at the User's manual [[Online Help Toc]].
Acest wiki găzduiește o multitudine de conținuturi, majoritatea cărora construiesc manualul. Puteți căuta documentația pornind de la [[Main Page]], or have a look at the User's manual [[Online Help Toc]].
</div>


<div class="mw-translate-fuzzy">
Pentru a traduce în wiki, trebuie să aveți permisiunea [[FAQ#How can I get edit permission on the wiki?|Cum pot obține permisiunea de a edita pe wiki?]].
Pentru a traduce în wiki, trebuie să aveți permisiunea [[FAQ#How can I get edit permission on the wiki?|Cum pot obține permisiunea de a edita pe wiki?]].
</div>


<div class="mw-translate-fuzzy">
Ar trebui să aveți, de asemenea, suficiente cunoștințe despre marcajul wiki și să urmați liniile generale de orientare descrise în [[WikiPages]].
Ar trebui să aveți, de asemenea, suficiente cunoștințe despre marcajul wiki și să urmați liniile generale de orientare descrise în [[WikiPages]].
</div>


=== Mediawiki Translation Extension===
=== Mediawiki Translation Extension===
Line 37: Line 86:
Instrumentul este documentat în [http://www.mediawiki.org/wiki/Help:Extension:Translate Help:Extension:Translate], și este partea a [http://www.mediawiki.org/wiki/MediaWiki_Language_Extension_Bundle MediaWiki Language Extension Bundle].
Instrumentul este documentat în [http://www.mediawiki.org/wiki/Help:Extension:Translate Help:Extension:Translate], și este partea a [http://www.mediawiki.org/wiki/MediaWiki_Language_Extension_Bundle MediaWiki Language Extension Bundle].


Pentru a începe rapid să pregătiți o pagină pentru traducere, citiți textul[http://www.mediawiki.org/wiki/Help:Extension:Translate/Page_translation_example Page translation example]. Essentially, a pair of <nowiki><translate> ... </translate></nowiki> etichetele trebuie să înconjoară întreaga pagină pentru a activa sistemul de traducere, iar pagina trebuie marcată pentru traducere.
Pentru a începe rapid să pregătiți o pagină pentru traducere, citiți textul[http://www.mediawiki.org/wiki/Help:Extension:Translate/Page_translation_example Page translation example]. Essentially, a pair of

<pre>
&lt;translate&gt; ... &lt;/translate&gt;
</pre><!--using lt and gt so that tags are not recognized-->

etichetele trebuie să înconjoară întreaga pagină pentru a activa sistemul de traducere, iar pagina trebuie marcată pentru traducere.


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
Line 43: Line 98:
</div>
</div>


<div class="mw-translate-fuzzy">
Dacă mergeți la [[Main Page/de]], veți observa că nu mai puteți edita direct pagina făcând clic pe etichetele [Editare], iar linkul de sus "Editare" a fost înlocuit cu linkul "Traduceți" care deschide utilitarul de traducere.
Dacă mergeți la [[Main Page/de]], veți observa că nu mai puteți edita direct pagina făcând clic pe etichetele [Editare], iar linkul de sus "Editare" a fost înlocuit cu linkul "Traduceți" care deschide utilitarul de traducere.
</div>


Când se adaugă conținut nou, pagina de engleză trebuie creată mai întâi, apoi tradusă în altă limbă. Dacă cineva dorește să schimbe sau să adauge conținut într-o pagină, pagina în limba Engleză ar trebui să fie prima modificată.
Când se adaugă conținut nou, pagina de engleză trebuie creată mai întâi, apoi tradusă în altă limbă. Dacă cineva dorește să schimbe sau să adauge conținut într-o pagină, pagina în limba Engleză ar trebui să fie prima modificată.
Line 51: Line 108:
</div>
</div>


<span id="Important_notes"></span>
===Note Importante===
===Note Importante===


<div class="mw-translate-fuzzy">
Fiecare utilizator wiki care are permisiuni "Editor" este capabil să lanseze utilitatea de traducere și să scrie, să salveze și să revizuiască traducerile.
Fiecare utilizator wiki care are permisiuni "Editor" este capabil să lanseze utilitatea de traducere și să scrie, să salveze și să revizuiască traducerile.
</div>


Cu toate acestea, numai utilizatorii cu permisiuni "Administrator" pot marca paginile pentru traducere. O pagină care nu este marcată pentru traducere nu va utiliza extensia de traducere și nu va fi sincronizată corect cu informațiile din limba engleză.
Cu toate acestea, numai utilizatorii cu permisiuni "Administrator" pot marca paginile pentru traducere. O pagină care nu este marcată pentru traducere nu va utiliza extensia de traducere și nu va fi sincronizată corect cu informațiile din limba engleză.


<div class="mw-translate-fuzzy">
Bara laterală din stânga este, de asemenea, translatabilă, dar numai administratorii pot modifica acest element al site-ului. Urmați instrucțiunile dedicate din pagina[[Localisation Sidebar]] .
Bara laterală din stânga este, de asemenea, translatabilă, dar numai administratorii pot modifica acest element al site-ului. Urmați instrucțiunile dedicate din pagina[[Localisation Sidebar]] .
</div>


Prima dată când comutați o pagină în noul sistem de traducere, aceasta își pierde toate vechile traduceri "manuale". Pentru a recupera o traducere, ar trebui să salvați o copie offline a vechiului text înainte de comutatore. Apoi puteți utiliza acest vechi text tradus pentru a completa unitățile de traducere în noul sistem. De asemenea, puteți deschide o versiune anterioară din istoric și puteți obține vechiul text în acest fel. Acest lucru trebuie făcut pentru fiecare limbă care a avut o pagină tradusă.
Prima dată când comutați o pagină în noul sistem de traducere, aceasta își pierde toate vechile traduceri "manuale". Pentru a recupera o traducere, ar trebui să salvați o copie offline a vechiului text înainte de comutatore. Apoi puteți utiliza acest vechi text tradus pentru a completa unitățile de traducere în noul sistem. De asemenea, puteți deschide o versiune anterioară din istoric și puteți obține vechiul text în acest fel. Acest lucru trebuie făcut pentru fiecare limbă care a avut o pagină tradusă.


<span id="Translate_the_FreeCAD_documentation"></span>
<div class="mw-translate-fuzzy">
== Traducerea documentației FreeCAD ==
</div>

As per general consensus, the reference page in the wiki is the English page, which should be created first. If you want to change or add content to a page, you should do it to the English page first, and only once the update is completed, port the modification to the translated page.

<span id="Old_translation_instructions"></span>
===Instrucțiuni pentru Vechile traduceri===
===Instrucțiuni pentru Vechile traduceri===


Line 91: Line 161:
</div>
</div>


<span id="Translate_the_FreeCAD_website"></span>
<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
== Traduceți site-ul FreeCAD ==
== Traduceți site-ul FreeCAD ==
Line 97: Line 168:
</div>
</div>


Translation of the FreeCAD website is now done through [https://crowdin.com/translate/freecad/561/en-en Crowdin]. The file is named {{FileName|homepage.po}}.
== Traducerea documentației FreeCAD ==


<span id="Development_-_How_to_Add_Localisation"></span>
<div class="mw-translate-fuzzy">
== Dezvoltare - Cum se adaugă Localizarea ==
== Dezvoltare - Cum se adaugă Localizarea ==
Această secțiune este destinată dezvoltatorilor care doresc să adauge localizare codului lor.
Această secțiune este destinată dezvoltatorilor care doresc să adauge localizare codului lor.
</div>


This section is for developers who want to add localisation to their code.

<span id="Preparing_your_FreeCAD/master_modules_for_translation"></span>
<div class="mw-translate-fuzzy">
=== Pregătirea modulelor FreeCAD / master pentru traducere ===
=== Pregătirea modulelor FreeCAD / master pentru traducere ===
Acestea sunt părțile la procesul de traducere a FreeCAD:
Acestea sunt părțile la procesul de traducere a FreeCAD:
Line 110: Line 188:
* convertește fișierele *.ts în fișiere *.qm și actualizează fișierul *.qrc al fiecărui modul
* convertește fișierele *.ts în fișiere *.qm și actualizează fișierul *.qrc al fiecărui modul
* Actualizați masterul FreeCAD
* Actualizați masterul FreeCAD
</div>

These are the parts to the FreeCAD translation process:
* extract text strings from source code into *.ts files
* load *.ts files into [http://crowdin.net/project/freecad FreeCAD Crowdin].
* translation of strings within Crowdin
* extract modified/new *.ts files from Crowdin
* convert *.ts files into *.qm files and update each module's *.qrc file
* update FreeCAD master


Toți pașii de mai sus sunt realizați prin "scripturile de traducere", care sunt gestionate periodic de un administrator.
Toți pașii de mai sus sunt realizați prin "scripturile de traducere", care sunt gestionate periodic de un administrator.
Line 118: Line 205:
</div>
</div>


<div class="mw-translate-fuzzy">
Aceasta creează un fișier de traducere gol. Odată ce acest lucru este făcut, trebuie să vă asigurați că scripturile de traducere sunt actualizate ca în acesta [https://github.com/FreeCAD/FreeCAD/pull/810 pull request].
Aceasta creează un fișier de traducere gol. Odată ce acest lucru este făcut, trebuie să vă asigurați că scripturile de traducere sunt actualizate ca în acesta [https://github.com/FreeCAD/FreeCAD/pull/810 pull request].
</div>


<div class="mw-translate-fuzzy">
Totul după acest lucru este automat în ceea ce privește un dezvoltator. Administratorul va extrage șirurile de text, traducătorii îi vor traduce, apoi administratorul va extrage traducerile și va actualiza FreeCAD / master.
Totul după acest lucru este automat în ceea ce privește un dezvoltator. Administratorul va extrage șirurile de text, traducătorii îi vor traduce, apoi administratorul va extrage traducerile și va actualiza FreeCAD / master.
</div>


<span id="Preparing_your_3rd_party_module_or_macro_for_translation"></span>
<div class="mw-translate-fuzzy">
=== Pregătirea modulului de la o terță parte sau a unei macro pentru traducere ===
=== Pregătirea modulului de la o terță parte sau a unei macro pentru traducere ===
Modulele sau macro-urile de la terțe părți sunt traduse în aceeași manieră, cu excepția faptului că trebuie să faceți o parte din munca dumneavoastră.
Modulele sau macro-urile de la terțe părți sunt traduse în aceeași manieră, cu excepția faptului că trebuie să faceți o parte din munca dumneavoastră.
Această adresă [https://www.forum.freecadweb.org/viewtopic.php?f=3&t=25180 forum discussion] descrie detaliile.
Această adresă [https://www.forum.freecadweb.org/viewtopic.php?f=3&t=25180 forum discussion] descrie detaliile.
</div>


3rd party modules or macros are translated in much the same fashion, except that you must do some of the work yourself.
This [https://www.forum.freecadweb.org/viewtopic.php?f=3&t=25180 forum discussion] describes the details.

Update: see [[Translating_an_external_workbench|Translating an external workbench]]

<span id="Older_module_translation_techniques"></span>
<div class="mw-translate-fuzzy">
=== Tehnici mai vechi de traducere a modulelor ===
=== Tehnici mai vechi de traducere a modulelor ===
[[Localization Older Methods|Metode de localizare mai vechi]] descrie utilizarea în detaliu a instrumentelor de traducere, cum ar fi Qt Lingvistist, lupdate, lrelease, pylupdate4, etc. Cele mai multe dintre acestea nu mai sunt necesare pentru modulele FreeCAD / master, dar poate fi utilă pregătirea și actualizarea modulelor terțelor părți.
[[Localization Older Methods|Metode de localizare mai vechi]] descrie utilizarea în detaliu a instrumentelor de traducere, cum ar fi Qt Lingvistist, lupdate, lrelease, pylupdate4, etc. Cele mai multe dintre acestea nu mai sunt necesare pentru modulele FreeCAD / master, dar poate fi utilă pregătirea și actualizarea modulelor terțelor părți.
</div>


[[Localization_Older_Methods|Localization Older Methods]] describes the use of translation tools such as Qt Linguist, lupdate, lrelease, pylupdate4, etc in detail. Most of this is no longer required for FreeCAD/master modules, but may be helpful preparing and updating 3rd party modules.

<span id="Automating_Crowdin_Translation_Updates"></span>
<div class="mw-translate-fuzzy">
== Automatizarea actualizărilor traducerii Crowdin ==
== Automatizarea actualizărilor traducerii Crowdin ==
În prezent, administratorii FreeCAD utilizează API-ul Crowdin prin [[Crowdin Scripts]] pentru a trage și împinge traducerile în Crowdin și înapoi la repo Github. API-ul Crowdin oferă administratorilor FreeCAD capacitatea de a automatiza aspectele fluxului de lucru al proiectului, pentru mai multe informații, consultați documentația [https://support.crowdin.com/api/api-integration-setup/ Crowdin API].
În prezent, administratorii FreeCAD utilizează API-ul Crowdin prin [[Crowdin Scripts]] pentru a trage și împinge traducerile în Crowdin și înapoi la repo Github. API-ul Crowdin oferă administratorilor FreeCAD capacitatea de a automatiza aspectele fluxului de lucru al proiectului, pentru mai multe informații, consultați documentația [https://support.crowdin.com/api/api-integration-setup/ Crowdin API].
</div>


Currently FreeCAD maintainers use the Crowdin API via [[Crowdin_Scripts|Crowdin Scripts]] to pull and push translations in to Crowdin and back in to the Github repo. The Crowdin API gives FreeCAD maintainers the ability to automate aspects of the project's translation workflow, for more info refer to the [https://support.crowdin.com/api/api-integration-setup/ Crowdin API documentation].

<span id="Related_Pages"></span>
<div class="mw-translate-fuzzy">
== Related Pages ==
== Related Pages ==
* [[Crowdin Administration]]
* [[Crowdin Administration]]
* [[Crowdin Scripts]]
* [[Crowdin Scripts]]
</div>


* [[Crowdin_Administration|Crowdin Administration]]
{{docnav|Branding|Extra python modules}}
* [[Crowdin_Scripts|Crowdin Scripts]]

==Scripting==

{{Emphasis|See also:}} [[FreeCAD_Scripting_Basics|FreeCAD Scripting Basics]].

To get a dictionary with the languages the FreeCAD interface supports, use the {{incode|supportedLocales}} method of the {{incode|FreeCADGui}} module.

{{Code|code=
locales = FreeCADGui.supportedLocales()
}}

After execution {{incode|locales}} will contain:

{{Code|code=
{'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'}
}}

To get the current interface language use the {{incode|getLocale}} method of the same module:

{{Code|code=
locale = FreeCADGui.getLocale()
}}

If the current language is English {{incode|locale}} will contain:

{{Code|code=
'English'
}}

To get the corresponding [https://support.crowdin.com/api/language-codes/ language code] you can use use:

{{Code|code=
locale = FreeCADGui.supportedLocales()[Gui.getLocale()]
}}

If the current language is English the result will be:

{{Code|code=
'en'
}}

To set the current interface language use the {{incode|setLocale}} method of the same module. You can specify the language or the language code:

{{Code|code=
FreeCADGui.setLocale('Russian')
FreeCADGui.setLocale('ru')
}}


{{Userdocnavi}}


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
{{docnav|Branding|Extra python modules}}
[[Category:Developer Documentation/ro]]
[[Category:Wiki]]
</div>
</div>


{{Userdocnavi{{#translation:}}}}
[[Category:Wiki]]
[[Category:Developer Documentation{{#translation:}}]]

[[Category:Wiki{{#translation:}}]]
{{clear}}

Latest revision as of 10:06, 31 March 2023

Branding
Extra python modules

Localizarea este, în general, procesul de furnizare a unui Software cu o interfață de utilizare în mai multe limbi. În FreeCAD puteți seta limba interfeței de utilizator sub Editare → Preferințe → Aplicație . FreeCAD utilizează Qt pentru a activa suportul pentru mai multe limbi. Pe sistemele Unix / Linux, FreeCAD utilizează implicit setările locale locale ale sistemului.

Localisation is in general the process of providing a Software with a multiple language user interface. In FreeCAD you can set the language of the user interface under Edit → Preferences → General. FreeCAD uses Qt to enable multiple language support. On Unix/Linux systems, FreeCAD uses the current locale settings of your system by default.

Ajutor în traducere FreeCAD

Unul dintre lucrurile foarte importante pe care utilizatorii le poate contribui la FreeCAD (dacă, de exemplu, nu au abilități de programare) este de a ajuta la traducerea diferitelor sale aspecte (cod sursă, wiki, site web, documentație etc.) într-o altă limbă. Iată modalitățile de a face acest lucru

Traduceți codul sursă al FreeCAD

 FreeCAD folosește un sistem de traducere on-line, bazat pe colaborare, numit Crowdin. Este software proprietate, dar gratuit pentru proiectele FOSS. Mai jos sunt instrucțiuni despre modul de utilizare:

FreeCAD utilizes a third party collaborative on-line translation system called Crowdin.

It is proprietary software but free to FOSS projects. Below are instructions on how to use it:

  • Du-te la FreeCAD translation project page on Crowdin
  • Conectați-vă prin crearea unui nou profil sau utilizând un cont terță parte ca adresa dvs. (GitHub, GitLab, GMail etc...)
  • Faceți clic pe limba pe care doriți să o traduceți;
  • Începeți traducerea făcând clic pe butonul Traducere de lângă unul dintre fișiere. De exemplu, FreeCAD.ts conține șiruri de text pentru GUI-ul principal al FreeCAD.
  • Puteți să votați pentru traducerile existente sau puteți crea propriile dvs. traduceri ..
Dacă participați în mod activ la traducerea FreeCAD și doriți să fiți informat înainte de lansarea următoarei versiuni, atunci când este gata să fie lansată, deci este timpul să vă revizuiți traducerea, vă rugăm să vă abonați la una dintre echipele de traducere Crowdin FreeCAD.

Note: Details on how to use crowdin can be found on the Crowdin Administration page.

Translating external workbenches

Visit Translating an external workbench.

FreeCAD Preferences for Translators

Starting with FreeCAD 0.20, the following variables can be manually added to the BaseApp/Preferences/General section of the user.cfg file to assist with the development of new translations:

AdditionalLanguageDomainEntries - to add entirely new languages to FreeCAD that are not currently supported by the source code, you can use this user preference to add to the list of available languages. The format of the languages is "Language Name"="code"; for example:

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

AdditionalTranslationsDirectory - add an additional directory for FreeCAD to search for *.qm files. This location will take precedence over $userAppDataDir/translations and $resourceDir/translations. For example:

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

Tranducere FreeCAD wiki

Acest wiki găzduiește o multitudine de conținuturi, majoritatea cărora construiesc manualul. Puteți căuta documentația pornind de la Main Page, or have a look at the User's manual Online Help Toc.

Pentru a traduce în wiki, trebuie să aveți permisiunea Cum pot obține permisiunea de a edita pe wiki?.

Ar trebui să aveți, de asemenea, suficiente cunoștințe despre marcajul wiki și să urmați liniile generale de orientare descrise în WikiPages.

Mediawiki Translation Extension

Când wiki-ul s-a mutat de la SourceForge, Yorik a instalat extensia de traducere a MediaWiki's Translation extension care facilitează traducerea paginilor. Avantajele extensiei de traducere sunt că titlul paginii poate fi acum tradus, se ține evidența traducerilor, se notifică dacă pagina inițială a fost actualizată și se mențin traducerile sincronizate cu pagina originală în limba engleză.

Instrumentul este documentat în Help:Extension:Translate, și este partea a MediaWiki Language Extension Bundle.

Pentru a începe rapid să pregătiți o pagină pentru traducere, citiți textulPage translation example. Essentially, a pair of

<translate> ... </translate>

etichetele trebuie să înconjoară întreaga pagină pentru a activa sistemul de traducere, iar pagina trebuie marcată pentru traducere.

Pentru a vedea un exemplu de funcționare a instrumentului de traducere odată ce plugin-ul de traducere este activat pe o pagină, accdesați Main Page.Veți vedea o bară de limbă generată automat în partea de sus. Faceți clic pe Deutsch (germană), vă va duce la Main Page/de. În dreptul titlului, puteți citi "Această pagină este o versiune tradusă a Paginii Principale a paginii și traducerea este XX% completă", XX fiind procentul efectiv al traducerii. Faceți clic pe "Traduceți" în partea de sus a paginii pentru a porni utilitarul de traducere pentru a actualiza, corecta și revizui traducerea existentă.

Dacă mergeți la Main Page/de, veți observa că nu mai puteți edita direct pagina făcând clic pe etichetele [Editare], iar linkul de sus "Editare" a fost înlocuit cu linkul "Traduceți" care deschide utilitarul de traducere.

Când se adaugă conținut nou, pagina de engleză trebuie creată mai întâi, apoi tradusă în altă limbă. Dacă cineva dorește să schimbe sau să adauge conținut într-o pagină, pagina în limba Engleză ar trebui să fie prima modificată.

Dacă nu sunteți siguri cum să continuați cu traducerile, nu ezitați să cereți ajutor în subforumul Develpment/Wiki sau în subforumuol specific al limbii în FreeCAD forum.

Note Importante

Fiecare utilizator wiki care are permisiuni "Editor" este capabil să lanseze utilitatea de traducere și să scrie, să salveze și să revizuiască traducerile.

Cu toate acestea, numai utilizatorii cu permisiuni "Administrator" pot marca paginile pentru traducere. O pagină care nu este marcată pentru traducere nu va utiliza extensia de traducere și nu va fi sincronizată corect cu informațiile din limba engleză.

Bara laterală din stânga este, de asemenea, translatabilă, dar numai administratorii pot modifica acest element al site-ului. Urmați instrucțiunile dedicate din paginaLocalisation Sidebar .

Prima dată când comutați o pagină în noul sistem de traducere, aceasta își pierde toate vechile traduceri "manuale". Pentru a recupera o traducere, ar trebui să salvați o copie offline a vechiului text înainte de comutatore. Apoi puteți utiliza acest vechi text tradus pentru a completa unitățile de traducere în noul sistem. De asemenea, puteți deschide o versiune anterioară din istoric și puteți obține vechiul text în acest fel. Acest lucru trebuie făcut pentru fiecare limbă care a avut o pagină tradusă.

Traducerea documentației FreeCAD

As per general consensus, the reference page in the wiki is the English page, which should be created first. If you want to change or add content to a page, you should do it to the English page first, and only once the update is completed, port the modification to the translated page.

Instrucțiuni pentru Vechile traduceri

Aceste instrucțiuni sunt doar pentru istoricul istoric. Traducerile ar trebui să utilizeze noul sistem cu extensia #Translation extension descrisă mai sus.

Deci, primul pas este să verificați dacă traducerea manuală a fost deja pornită pentru limba dvs. (vedeți în bara laterală stângă, sub "manual").
Dacă nu, mergeți la forum și spuneți că doriți să începeți o nouă traducere, vom crea setările de bază pentru limba în care doriți să lucrați.
Trebuie apoi să obțineți gain wiki permission edit.
Dacă limba dvs. este deja listată, vedeți în ce pagini încă lipsește o traducere (acestea vor fi listate în roșu). Tehnica este simplă: intrați într-o pagină roșie și copiați / inserați conținutul paginii engleză corespunzătoare și începeți să traduceți.
Nu uitați să includeți toate etichetele și șabloanele din pagina engleză originală. Unele dintre aceste șabloane vor avea un echivalent în limba dvs. (de exemplu, există un șablon French Docnav numit Docnav/fr). Ar trebui să utilizați un slash și codul limbii dvs în toate link-urile. Uitați-vă la alte pagini deja traduse pentru a vedea cum au făcut-o.
Adăugați un slash și codul de limbă în categorii, cum ar fi [[Category: Documentation Developer / fr]]
Și dacă nu sunteți sigur, mergeți la forumuri și cereți-le oamenilor să verifice ceea ce ați făcut și să vă spun dacă este corect sau nu.
Patru șabloane sunt utilizate frecvent în paginile manuale. Aceste 4 șabloane au versiuni localizate (Template: Docnav/fr, Template:fr, etc ...)

  • Template:GuiCommand: este blocul de informații Gui Command în partea dreaptă sus a documentației de comandă.
  • Template: Docnav: este bara de navigare din partea de jos a paginilor, care afișează paginile anterioare și următoare.

Pagina de numire a Convenției
Vă rugăm să rețineți că, datorită limitărilor din implementarea Sourceforge a motorului MediaWiki, solicităm ca toate paginile dvs. să păstreze numele original al omologului său, adăugând un slash și codul dvs. de limbă. De exemplu, pagina tradusă pentru About FreeCAD ar trebui să fie Despre Freecad/es pentru spaniolă, Despre FreeCAD/pl pentru poloneză, etc. Motivul este simplu: pentru ca dacă traducătorii să dispară, administratorii wiki, care nu vorbesc toate limbile, vor ști ce sunt aceste pagini. Acest lucru va facilita întreținerea și va evita paginile pierdute.
Dacă doriți ca șablonul Docnav să afișeze pagini legate în limba dvs., puteți utiliza paginile de redirecționare . Ele sunt linkuri rapide la pagina actuală. Iată un exemplu cu pagina franceză Despre FreeCAD.

  • Pagina About FreeCAD/fr este pagina cu conținut
  • Pagina À propos de FreeCAD conține acest cod:
#REDIRECT  [[About FreeCAD/fr]] 
  • În pagina About FreeCAD/fr, codul Docnav va arăta astfel:
 {{docnav/fr|Bienvenue sur l'aide en ligne|Fonctionnalités}}

Pagina "Bienvenue sur l'aide en ligne" se redirecționează către pagina Online Help Startpage/fr, iar pagina "Fonctionalités" redirecționează către Feature list/fr.

Traduceți site-ul FreeCAD

Traducerea site-ului FreeCAD se face acum prin intermediul Crowdin. Fișierul este denumit homepage.po.

Translation of the FreeCAD website is now done through Crowdin. The file is named homepage.po.

Dezvoltare - Cum se adaugă Localizarea

Această secțiune este destinată dezvoltatorilor care doresc să adauge localizare codului lor.

This section is for developers who want to add localisation to their code.

Pregătirea modulelor FreeCAD / master pentru traducere

Acestea sunt părțile la procesul de traducere a FreeCAD:

  • extrageți șiruri de text din codul sursă în fișiere *.ts
  • încărcați fișierele .ts în FreeCAD Crowdin.
  • traducerea șirurilor în Crowdin
  • extrage fișiere modificate/noi *.ts de la Crowdin
  • convertește fișierele *.ts în fișiere *.qm și actualizează fișierul *.qrc al fiecărui modul
  • Actualizați masterul FreeCAD

These are the parts to the FreeCAD translation process:

  • extract text strings from source code into *.ts files
  • load *.ts files into FreeCAD Crowdin.
  • translation of strings within Crowdin
  • extract modified/new *.ts files from Crowdin
  • convert *.ts files into *.qm files and update each module's *.qrc file
  • update FreeCAD master

Toți pașii de mai sus sunt realizați prin "scripturile de traducere", care sunt gestionate periodic de un administrator.

Pregătirea modulului dvs. pentru traducere este destul de ușoară. În primul rând, trebuie să vă asigurați că aveți un director de "traduceri" în MyModule / Gui / Resources. Apoi deschideți o fereastră terminală (sau echivalent Windows / OSX) în directorul "traduceri" și introduceți următoarea comandă:

lupdate -ts myModule.ts

Aceasta creează un fișier de traducere gol. Odată ce acest lucru este făcut, trebuie să vă asigurați că scripturile de traducere sunt actualizate ca în acesta pull request.

Totul după acest lucru este automat în ceea ce privește un dezvoltator. Administratorul va extrage șirurile de text, traducătorii îi vor traduce, apoi administratorul va extrage traducerile și va actualiza FreeCAD / master.

Pregătirea modulului de la o terță parte sau a unei macro pentru traducere

Modulele sau macro-urile de la terțe părți sunt traduse în aceeași manieră, cu excepția faptului că trebuie să faceți o parte din munca dumneavoastră. Această adresă forum discussion descrie detaliile.

3rd party modules or macros are translated in much the same fashion, except that you must do some of the work yourself. This forum discussion describes the details.

Update: see Translating an external workbench

Tehnici mai vechi de traducere a modulelor

Metode de localizare mai vechi descrie utilizarea în detaliu a instrumentelor de traducere, cum ar fi Qt Lingvistist, lupdate, lrelease, pylupdate4, etc. Cele mai multe dintre acestea nu mai sunt necesare pentru modulele FreeCAD / master, dar poate fi utilă pregătirea și actualizarea modulelor terțelor părți.

Localization Older Methods describes the use of translation tools such as Qt Linguist, lupdate, lrelease, pylupdate4, etc in detail. Most of this is no longer required for FreeCAD/master modules, but may be helpful preparing and updating 3rd party modules.

Automatizarea actualizărilor traducerii Crowdin

În prezent, administratorii FreeCAD utilizează API-ul Crowdin prin Crowdin Scripts pentru a trage și împinge traducerile în Crowdin și înapoi la repo Github. API-ul Crowdin oferă administratorilor FreeCAD capacitatea de a automatiza aspectele fluxului de lucru al proiectului, pentru mai multe informații, consultați documentația Crowdin API.

Currently FreeCAD maintainers use the Crowdin API via Crowdin Scripts to pull and push translations in to Crowdin and back in to the Github repo. The Crowdin API gives FreeCAD maintainers the ability to automate aspects of the project's translation workflow, for more info refer to the Crowdin API documentation.

Scripting

See also: FreeCAD Scripting Basics.

To get a dictionary with the languages the FreeCAD interface supports, use the supportedLocales method of the FreeCADGui module.

locales = FreeCADGui.supportedLocales()

After execution locales will contain:

{'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'}

To get the current interface language use the getLocale method of the same module:

locale = FreeCADGui.getLocale()

If the current language is English locale will contain:

'English'

To get the corresponding language code you can use use:

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

If the current language is English the result will be:

'en'

To set the current interface language use the setLocale method of the same module. You can specify the language or the language code:

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


Branding
Extra python modules