docusaurus/docs/ro/translation.html
Website Deployment Script 4546c36b7d Deploy website
Deploy website version based on 6b2f57c29c
2018-06-10 19:21:05 +00:00

236 lines
No EOL
40 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html><html lang="ro"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Translations &amp; Localization · Docusaurus</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Docusaurus allows for easy translation functionality using [Crowdin](https://crowdin.com/). Fișierele de documentație scrise în engleză sunt încărcate pe Crowdin pentru o traducere a utilizatorilor din comunitate. Paginile de nivel înalt scrise cu șiruri în limba engleză pot fi traduse prin încercuirea tuturor șirurilor pe care vrei să le traduci într-un tag `&lt;traduce&gt;`. Alte titluri și etichete pot fi deasemenea găsite și traduse corespunzător."/><meta property="og:title" content="Translations &amp; Localization · Docusaurus"/><meta property="og:type" content="website"/><meta property="og:url" content="https://docusaurus.io/index.html"/><meta property="og:description" content="Docusaurus allows for easy translation functionality using [Crowdin](https://crowdin.com/). Fișierele de documentație scrise în engleză sunt încărcate pe Crowdin pentru o traducere a utilizatorilor din comunitate. Paginile de nivel înalt scrise cu șiruri în limba engleză pot fi traduse prin încercuirea tuturor șirurilor pe care vrei să le traduci într-un tag `&lt;traduce&gt;`. Alte titluri și etichete pot fi deasemenea găsite și traduse corespunzător."/><meta property="og:image" content="https://docusaurus.io/img/docusaurus.png"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://docusaurus.io/img/docusaurus.png"/><link rel="shortcut icon" href="/img/docusaurus.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://docusaurus.io/blog/atom.xml" title="Docusaurus Blog ATOM Feed"/><link rel="alternate" type="application/rss+xml" href="https://docusaurus.io/blog/feed.xml" title="Docusaurus Blog RSS Feed"/><script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-44373548-31', 'auto');
ga('send', 'pageview');
</script><link rel="stylesheet" href="/css/code-blocks-buttons.css"/><script type="text/javascript" src="https://buttons.github.io/buttons.js"></script><script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js"></script><script type="text/javascript" src="/js/code-blocks-buttons.js"></script><script src="https://unpkg.com/vanilla-back-to-top@7.1.14/dist/vanilla-back-to-top.min.js"></script><script>
document.addEventListener("DOMContentLoaded", function(){
addBackToTop(
{"zIndex":100}
)
});
</script><link rel="stylesheet" href="/css/prism.css"/><link rel="stylesheet" href="/css/main.css"/></head><body class="sideNavVisible doc separateOnPageNav"><div class="fixedHeaderContainer"><div class="headerWrapper wrapper"><header><a href="/ro"><img class="logo" src="/img/docusaurus.svg" alt="Docusaurus"/><h2 class="headerTitleWithLogo">Docusaurus</h2></a><a href="/ro/versions"><h3>1.2.0</h3></a><div class="navigationWrapper navigationSlider"><nav class="slidingNav"><ul class="nav-site nav-site-internal"><li class="siteNavGroupActive"><a href="/docs/ro/installation" target="_self">Documente</a></li><li class=""><a href="/ro/help" target="_self">Ajutor</a></li><li class=""><a href="/ro/users" target="_self">Users</a></li><li class=""><a href="/ro/about-slash" target="_self">About /</a></li><li class=""><a href="/blog" target="_self">Blog</a></li><li class=""><a href="https://github.com/facebook/docusaurus" target="_self">GitHub</a></li><span><li><a id="languages-menu" href="#"><img class="languages-icon" src="/img/language.svg"/>Română</a><div id="languages-dropdown" class="hide"><ul id="languages-dropdown-items"><li><a href="/docs/en/translation">English</a></li><li><a href="/docs/es-ES/translation">Español</a></li><li><a href="/docs/tr/translation">Türkçe</a></li><li><a href="/docs/zh-CN/translation">简体中文</a></li><li><a href="https://crowdin.com/project/docusaurus" target="_blank" rel="noreferrer noopener">Help Translate</a></li></ul></div></li><script>
const languagesMenuItem = document.getElementById("languages-menu");
const languagesDropDown = document.getElementById("languages-dropdown");
languagesMenuItem.addEventListener("click", function(){
if(languagesDropDown.className == "hide") {
languagesDropDown.className = "visible";
} else {
languagesDropDown.className = "hide";
}
});
</script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i></i><span>Ghiduri</span></h2><div class="tocToggler" id="tocToggler"><i class="icon-toc"></i></div></div><div class="navGroups"><div class="navGroup navGroupActive"><h3>Pentru a începe</h3><ul><li class="navListItem"><a class="navItem" href="/docs/ro/installation">Installation</a></li><li class="navListItem"><a class="navItem" href="/docs/ro/site-preparation">Site Preparation</a></li><li class="navListItem"><a class="navItem" href="/docs/ro/site-creation">Creating your site</a></li><li class="navListItem"><a class="navItem" href="/docs/ro/publishing">Publishing your site</a></li></ul></div><div class="navGroup navGroupActive"><h3>Ghiduri</h3><ul><li class="navListItem"><a class="navItem" href="/docs/ro/blog">Adding a Blog</a></li><li class="navListItem"><a class="navItem" href="/docs/ro/custom-pages">Custom Pages</a></li><li class="navListItem"><a class="navItem" href="/docs/ro/search">Enabling Search</a></li><li class="navListItem"><a class="navItem" href="/docs/ro/navigation">Navigation and Sidebars</a></li><li class="navListItem navListItemActive"><a class="navItem navItemActive" href="/docs/ro/translation">Traduceri &amp; Localizări</a></li><li class="navListItem"><a class="navItem" href="/docs/ro/versioning">Versioning</a></li></ul></div><div class="navGroup navGroupActive"><h3>API</h3><ul><li class="navListItem"><a class="navItem" href="/docs/ro/commands">CLI Commands</a></li><li class="navListItem"><a class="navItem" href="/docs/ro/doc-markdown">Markdown Features</a></li><li class="navListItem"><a class="navItem" href="/docs/ro/api-pages">Pages and Styles</a></li><li class="navListItem"><a class="navItem" href="/docs/ro/site-config">siteConfig.js</a></li></ul></div></div></section></div><script>
document.addEventListener('DOMContentLoaded', function() {
createToggler('#navToggler', '#docsNav', 'docsSliderActive');
createToggler('#tocToggler', 'body', 'tocActive');
const headings = document.querySelector('.toc-headings');
headings && headings.addEventListener('click', function(event) {
if (event.target.tagName === 'A') {
document.body.classList.remove('tocActive');
}
}, false);
function createToggler(togglerSelector, targetSelector, className) {
var toggler = document.querySelector(togglerSelector);
var target = document.querySelector(targetSelector);
toggler.onclick = function(event) {
event.preventDefault();
target.classList.toggle(className);
};
}
});
</script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://crowdin.com/project/docusaurus/ro" target="_blank" rel="noreferrer noopener">Translate</a><h1>Translations &amp; Localization</h1></header><article><div><span><p>Docusaurus allows for easy translation functionality using <a href="https://crowdin.com/">Crowdin</a>. Fișierele de documentație scrise în engleză sunt încărcate pe Crowdin pentru o traducere a utilizatorilor din comunitate. Paginile de nivel înalt scrise cu șiruri în limba engleză pot fi traduse prin încercuirea tuturor șirurilor pe care vrei să le traduci într-un tag <code>&lt;traduce&gt;</code>. Alte titluri și etichete pot fi deasemenea găsite și traduse corespunzător.</p>
<h2><a class="anchor" aria-hidden="true" id="configurații-traduceri-docusaurus"></a><a href="#configurații-traduceri-docusaurus" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Configurații traduceri Docusaurus</h2>
<p>To generate example files for translations with Docusaurus, run the <code>examples</code> script with the command line argument <code>translations</code>:</p>
<pre><code class="hljs css languages- bash">npm run exemple traduceri
</code></pre>
<p>sau</p>
<pre><code class="hljs css languages- bash">yarn exemple traduceri
</code></pre>
<p>Aceasta va crea următoarele fișiere:</p>
<pre><code class="hljs css languages- bash">pages/en/<span class="hljs-built_in">help</span>-with-translations.js
languages.js
../crowdin.yaml
</code></pre>
<ul>
<li>Fișierul <code>pagini/en/ajutor-cu-traduceri.js</code> include aceeași pagină starter de ajutor generată de script-ul <code>exemple</code>, dar care acum include tag-urile de traducere.</li>
</ul>
<blockquote>
<p>Generally, you will use <code>help-with-translations.js</code> as a guide to enable translations in your other pages, but not actually commit the file to your repo (i.e., you can delete it). However, if you want a Help page, and you currently do not have one, you can rename this file to <code>help.js</code> and use it as a starting point.</p>
</blockquote>
<ul>
<li><p>The <code>languages.js</code> file tells Docusaurus what languages you want to enable for your site. By default, we expect English to be enabled.</p></li>
<li><p>The <code>crowdin.yaml</code> file is used to configure Crowdin integration, and is copied up one level into your Docusaurus project repo. If your Docusaurus project resides in <code>/project/website</code>, then <code>crowdin.yaml</code> will be copied to <code>/project/crowdin.yaml</code>.</p></li>
</ul>
<h2><a class="anchor" aria-hidden="true" id="traducand-documentele-tale-existente"></a><a href="#traducand-documentele-tale-existente" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Traducând documentele tale existente</h2>
<p>Your documentation files (e.g., the <code>.md</code> files that live in your <code>docs</code> directory) do not need to be changed or moved to support translations. They will be uploaded to Crowdin to be translated directly.</p>
<h2><a class="anchor" aria-hidden="true" id="activand-traducerile-pe-pagini"></a><a href="#activand-traducerile-pe-pagini" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Activând traducerile pe Pagini</h2>
<p>Pagini îți permite să personalizezi layout-ul și conținutul specific al paginilor ca o pagină personalizată de index sau o pagină de ajutor.</p>
<p>Pages with text that you want translated should be placed in <code>website/pages/en</code> directory.</p>
<p>Încercuiește șirurile pe care vrei să le traduci într-un tag <code>&lt;traduce&gt;</code>, apoi adaugă următoarele declarații de tip <code>require</code> în capul fișierului:</p>
<pre><code class="hljs css languages- jsx"><span class="token operator">...</span>
<span class="token keyword">const</span> translate <span class="token operator">=</span> <span class="token function">require</span><span class="token punctuation">(</span><span class="token string">'../../server/translate.js'</span><span class="token punctuation">)</span><span class="token punctuation">.</span>translate<span class="token punctuation">;</span>
<span class="token operator">...</span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>h2</span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>translate</span><span class="token punctuation">></span></span>This header will be translated<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>translate</span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>h2</span><span class="token punctuation">></span></span>
<span class="token operator">...</span>
</code></pre>
<p>Poţi deasemenea să incluzi un atribut de descriere opțională pentru a da mai mult context pentru un traducător despre cum să traducă acel șir:</p>
<pre><code class="hljs css languages- jsx"><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>p</span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>traduce</span> <span class="token attr-name">desc</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">"</span>floare, nu verb<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Rose<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>traduce</span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>p</span><span class="token punctuation">></span></span>
</code></pre>
<blockquote>
<p>The <code>&lt;translate&gt;</code> tag generally works well on pure strings. If you have a string like &quot;Docusaurus currently provides support to help your website use <a href="${siteConfig.baseUrl}docs/${this.props.language}/translation.html">translations</a>&quot;, wrapping the <code>&lt;translation&gt;</code> tag around that entire string will cause issues because of the markdown linking, etc. Your options are to not translate those strings, or spread a bunch of <code>&lt;translate&gt;</code> tags amongst the pure substrings of that string.</p>
</blockquote>
<h2><a class="anchor" aria-hidden="true" id="adunand-șirurile-pentru-a-traduce"></a><a href="#adunand-șirurile-pentru-a-traduce" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Adunând șirurile pentru a Traduce</h2>
<p>Șirurile din paginile de localizare trebuiesc extrase și furnizate lui Crowdin.</p>
<p>Add the following script to your <code>website/package.json</code> file, if it does not exist already:</p>
<pre><code class="hljs css languages- js">{
...
<span class="hljs-string">"scripts"</span>: {
<span class="hljs-string">"write-translations"</span>: <span class="hljs-string">"docusaurus-write-translations"</span>
},
...
}
</code></pre>
<p>Rulând acest script va genera un fișier <code>siteweb/i18n/en.json</code> conținând toate șirurile ce vor fi traduse din engleză în alte limbi.</p>
<p>Acest script include text din următoarele locuri:</p>
<ul>
<li>Șirurile <code>titlu</code> și <code>etichetă_sidebar</code> din header-ele de markdown ale documentului</li>
<li>nume categorii în <code>sidebars.json</code></li>
<li>tagline în <code>siteConfig.js</code></li>
<li>șirurile link header <code>etichetă</code> în <code>siteConfig.js</code></li>
<li>șirurile încercuite în tag-ul <code>&lt;traduce&gt;</code> în orice fișier <code>.js</code> în interiorul <code>pagini</code></li>
</ul>
<h2><a class="anchor" aria-hidden="true" id="cum-se-traduc-șirurile"></a><a href="#cum-se-traduc-șirurile" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Cum se traduc șirurile</h2>
<p>Docusaurus însăși nu face nici o traducere dintr-o limbă în alta. În locul acesteia, el integrează <a href="https://crowdin.com/">Crowdin</a> pentru a încărca traduceri și apoi descarcă fișierele respective traduse din Crowdin.</p>
<h2><a class="anchor" aria-hidden="true" id="cum-folosește-docusaurus-traducerile-de-șiruri"></a><a href="#cum-folosește-docusaurus-traducerile-de-șiruri" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Cum folosește Docusaurus traducerile de șiruri</h2>
<p>Această secțiune furnizează context despre cum funcționează traducerile în Docusaurus.</p>
<h3><a class="anchor" aria-hidden="true" id="șiruri"></a><a href="#șiruri" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Șiruri</h3>
<p>Un site Docusaurus are multe șiruri utilizate prin el care au nevoie de localizare. Cu toate acestea, menținerea unei liste de șiruri utilizate într-un site poate fi laborioasă. Docusaurus simplifies this by centralizing strings.</p>
<p>Header-ul de navigație, spre exemplu, poate avea link-uri către 'Acasă' sau 'Blog'-ul tău. Aceasta sau alte șiruri găsite în header-ele și sidebar-urile paginilor sunt extrase și plasate în <code>i18n/en.json</code>. When your files are translated, say into Spanish, a <code>i18n/es-ES.json</code> file will be downloaded from Crowdin. Apoi, când paginile în spaniolă sunt generate, Docusaurus va înlocui versiunea în engleză a șirurilor corespunzătoare cu șirurile traduse din fișierul de localizare cu șiruri corespunzător (ex. Într-un site cu spaniola activată 'Help' va deveni 'Ayuda').</p>
<h3><a class="anchor" aria-hidden="true" id="fișiere-markdown"></a><a href="#fișiere-markdown" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Fișiere Markdown</h3>
<p>Pentru fișierele de documentație însăși, versiunile traduse așe acestor fișiere sunt descărcate și apoi redate prin template-ul de layout corespunzător.</p>
<h3><a class="anchor" aria-hidden="true" id="alte-pagini"></a><a href="#alte-pagini" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Alte pagini</h3>
<p>For other pages, Docusaurus will automatically transform all <code>&lt;translate&gt;</code> tags it finds into function calls that return the translated strings from the corresponding localized file <em><code>locale.json</code></em>.</p>
<h2><a class="anchor" aria-hidden="true" id="crowdin"></a><a href="#crowdin" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Crowdin</h2>
<p>Crowdin is a company that provides translation services. For Open Source projects, Crowdin provides free string translations.</p>
<p>Create your translation project on <a href="https://crowdin.com/">Crowdin</a>. Poți să folosești <a href="https://support.crowdin.com/translation-process-overview/">Ghiduri-le Crowdin</a> pentru a afla mai multe despre work flow-ul traducerilor. <em>We suggest that you deselect and do not include &quot;English&quot; as a translatable language to prevent the creation of <code>en-US</code> localization files as this can lead to confusion.</em></p>
<blockquote>
<p>Ensure in your Crowdin settings, in the Translations section, that &quot;Duplicate Strings&quot; are set to <a href="https://support.crowdin.com/api/create-project/">&quot;Hide - all duplicates will share the same translation&quot;</a>. This setting will ensure that identical strings between versions share a single translation.</p>
</blockquote>
<p>Your project will need a <code>crowdin.yaml</code> file generated. If you ran <code>yarn examples translations</code> or <code>npm run examples translations</code>, this file was created for you on the same level as your <code>website</code> directory.</p>
<blockquote>
<p>You will need to install the <code>crowdin</code> command line interface. Please follow the <a href="https://support.crowdin.com/cli-tool/">installation directions</a>.</p>
</blockquote>
<p>The example below can be automatically generated by the Docusaurus cli with the <code>examples</code> script. It should be placed in the top level of your project directory to configure how and what files are uploaded/downloaded.</p>
<p>Below is an example Crowdin configuration for the respective languages: German, Spanish, French, Japanese, Korean, Bahasa Indonesia, Portuguese Brazilian, Chinese Simplified, and Chinese Traditional.</p>
<pre><code class="hljs css languages- yaml"><span class="hljs-attr">project_identifier_env:</span> <span class="hljs-string">CROWDIN_DOCUSAURUS_PROJECT_ID</span>
<span class="hljs-attr">api_key_env:</span> <span class="hljs-string">CROWDIN_DOCUSAURUS_API_KEY</span>
<span class="hljs-attr">base_path:</span> <span class="hljs-string">"./"</span>
<span class="hljs-attr">preserve_hierarchy:</span> <span class="hljs-literal">true</span>
<span class="hljs-attr">files:</span>
<span class="hljs-bullet"> -</span>
<span class="hljs-attr"> source:</span> <span class="hljs-string">'/docs/**/*.md'</span>
<span class="hljs-attr"> translation:</span> <span class="hljs-string">'/website/translated_docs/%locale%/**/%original_file_name%'</span>
<span class="hljs-attr"> languages_mapping:</span> <span class="hljs-meta">&amp;anchor</span>
<span class="hljs-attr"> locale:</span>
<span class="hljs-attr"> 'de':</span> <span class="hljs-string">'de'</span>
<span class="hljs-attr"> 'es-ES':</span> <span class="hljs-string">'es-ES'</span>
<span class="hljs-attr"> 'fr':</span> <span class="hljs-string">'fr'</span>
<span class="hljs-attr"> 'ja':</span> <span class="hljs-string">'ja'</span>
<span class="hljs-attr"> 'ko':</span> <span class="hljs-string">'ko'</span>
<span class="hljs-attr"> 'mr':</span> <span class="hljs-string">'mr-IN'</span>
<span class="hljs-attr"> 'pt-BR':</span> <span class="hljs-string">'pt-BR'</span>
<span class="hljs-attr"> 'zh-CN':</span> <span class="hljs-string">'zh-CN'</span>
<span class="hljs-attr"> 'zh-TW':</span> <span class="hljs-string">'zh-TW'</span>
</code></pre>
<p>You can go <a href="https://support.crowdin.com/configuration-file/">here</a> to learn more about customizing your <code>crowdin.yaml</code> file.</p>
<h3><a class="anchor" aria-hidden="true" id="setup-the-crowdin-scripts"></a><a href="#setup-the-crowdin-scripts" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Setup the Crowdin Scripts</h3>
<p>You will want to manually sync your files to and from Crowdin. The sync process will upload any markdown files in <code>/docs</code> as well as translatable strings in <code>website/i18n/en.json</code>. (These strings can be generated by running <code>yarn write-translations</code>.)</p>
<p>You can add the following to your <code>package.json</code> to manually trigger Crowdin.</p>
<pre><code class="hljs css languages- js"><span class="hljs-string">"scripts"</span>: {
<span class="hljs-string">"crowdin-upload"</span>: <span class="hljs-string">"crowdin --config ../crowdin.yaml upload sources --auto-update -b master"</span>,
<span class="hljs-string">"crowdin-download"</span>: <span class="hljs-string">"crowdin --config ../crowdin.yaml download -b master"</span>
},
</code></pre>
<h3><a class="anchor" aria-hidden="true" id="sincronizare-fișier-manuală"></a><a href="#sincronizare-fișier-manuală" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Sincronizare fișier manuală</h3>
<p>You will always want to upload your markdown files and translatable strings first and the download the translations section. So run the commands in this order:</p>
<pre><code class="hljs css languages- bash">CROWDIN_DOCUSAURUS_PROJECT_ID=YOUR_CROWDIN_PROJECT_ID CROWDIN_DOCUSAURUS_API_KEY=YOUR_CROWDIN_API_KEY yarn run crowdin-upload
CROWDIN_DOCUSAURUS_PROJECT_ID=YOUR_CROWDIN_PROJECT_ID CROWDIN_DOCUSAURUS_API_KEY=YOUR_CROWDIN_API_KEY yarn run crowdin-download
</code></pre>
<blockquote>
<p><code>YOUR_CROWDIN_PROJECT_ID</code> is the name of your Crowdin project. e.g., for <a href="https://crowdin.com/project/docusaurus/">https://crowdin.com/project/docusaurus/</a>, that variable would be set to <code>docusaurus</code>. <code>YOUR_CROWDIN_API_KEY</code> is a unique key that is like a password. You can find it in the <code>API</code> tab of your Crowdin project's <code>Settings</code>.</p>
<p>These commands require having an environment variable set with your Crowdin project id and api key (<code>CROWDIN_PROJECT_ID</code>, <code>CROWDIN_API_KEY</code>). You can preface them inline as done above or add them permanently to your <code>.bashrc</code> or <code>.bash_profile</code>.</p>
<p>If you run more than one localized Docusaurus project on your computer, you should change the name of the environment variables to something unique (<code>CROWDIN_PROJECTNAME_PROJECT_ID</code>, <code>CROWDIN_PROJECTNAME_API_KEY</code>).</p>
<p>Since the files are generated, you do not need to have any files in your <code>website/i18n</code> or <code>website/translated_docs</code> directory as part of your repo. So you can can add <code>website/i18n/*</code> and <code>website/translated_docs</code> to your <code>.gitignore</code> file.</p>
</blockquote>
<h3><a class="anchor" aria-hidden="true" id="automated-file-sync-using-circleci"></a><a href="#automated-file-sync-using-circleci" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Automated File Sync Using CircleCI</h3>
<p>You can automate pulling down and uploading translations for your files using the <a href="https://circleci.com">CircleCI</a> web continuous integration service.</p>
<p>First, update the <code>circle.yml</code> file in your project directory to include steps to upload English files to be translated and download translated files using the Crowdin CLI. Uite aici un exemplu de fișier <code>circle.yml</code>:</p>
<pre><code class="hljs css languages- yaml"><span class="hljs-attr">machine:</span>
<span class="hljs-attr"> node:</span>
<span class="hljs-attr"> version:</span> <span class="hljs-number">6.10</span><span class="hljs-number">.3</span>
<span class="hljs-attr"> npm:</span>
<span class="hljs-attr"> version:</span> <span class="hljs-number">3.10</span><span class="hljs-number">.10</span>
<span class="hljs-attr">test:</span>
<span class="hljs-attr"> override:</span>
<span class="hljs-bullet"> -</span> <span class="hljs-string">"true"</span>
<span class="hljs-attr">deployment:</span>
<span class="hljs-attr"> website:</span>
<span class="hljs-attr"> branch:</span> <span class="hljs-string">master</span>
<span class="hljs-attr"> commands:</span>
<span class="hljs-comment"># configure git user</span>
<span class="hljs-bullet"> -</span> <span class="hljs-string">git</span> <span class="hljs-string">config</span> <span class="hljs-bullet">--global</span> <span class="hljs-string">user.email</span> <span class="hljs-string">"test-site-bot@users.noreply.github.com"</span>
<span class="hljs-bullet"> -</span> <span class="hljs-string">git</span> <span class="hljs-string">config</span> <span class="hljs-bullet">--global</span> <span class="hljs-string">user.name</span> <span class="hljs-string">"Website Deployment Script"</span>
<span class="hljs-bullet"> -</span> <span class="hljs-string">echo</span> <span class="hljs-string">"machine github.com login test-site-bot password $GITHUB_TOKEN"</span> <span class="hljs-string">&gt; ~/.netrc
# install Docusaurus and generate file of English strings
- cd website &amp;&amp; npm install &amp;&amp; npm run write-translations &amp;&amp; cd ..
# instalare Crowdin
- sudo apt-get install default-jre
- wget https://artifacts.crowdin.com/repo/deb/crowdin.deb -O crowdin.deb
- sudo dpkg -i crowdin.deb
# încărcări/descărcări traduceri
- crowdin --config crowdin.yaml upload sources --auto-update -b master
- crowdin --config crowdin.yaml download -b master
# construiește și publică un site web
- cd website &amp;&amp; GIT_USER=test-site-bot npm run publish-gh-pages
</span></code></pre>
<p>Comanda <code>crowdin</code> utilizează fișierul <code>crowdin.yaml</code> generat cu script-ul <code>exemple</code>. Ar trebuii plasat în directorul proiectului tău pentru a configura cum și ce fișiere sunt încărcate/descărcate.</p>
<p>Ia aminte că în fișierul <code>crowdin.yaml</code>, <code>CROWDIN_PROJECT_ID</code> și <code>CROWDIN_API_KEY</code> sunt variabile de environment setate în Circle pentru proiectul tău Crowdin. Pot fi găsite în setările proiectului tău Crowdin.</p>
<p>Acum, Circle te va ajuta să iei traducerile automat înainte să îți construiești site-ul web. Fișierul <code>crowdin.yaml</code> furnizat va copia documentele traduse în <code>siteweb/documente_traduse/</code>, și versiunile traduse a fișierului de șiruri <code>i18n/en.json</code> în <code>i18n/${language}.json</code>.</p>
<p>Dacă dorești să utilizezi Crowdin pe server-ul tău local, poți să instalezi <a href="https://support.crowdin.com/cli-tool/">unealta Crodin CLI</a> și să rulezi aceleași comenzi găsite în fișierul <code>circle.yaml</code>. Singura diferență este ca trebuie să setezi valorile <code>project_identifier</code> și <code>api_key</code> în fișierul <code>crowdin.yaml</code>, din moment ce nu vei avea variabilele de environment Circle de setat.</p>
<h2><a class="anchor" aria-hidden="true" id="traduceri-versionate"></a><a href="#traduceri-versionate" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Traduceri versionate</h2>
<p>Dacă dorești să ai traducere și versionare pentru documentația ta, adaugă următoarea secțiune la finalul fișierului tău <code>crowdin.yaml</code>:</p>
<pre><code class="hljs css languages- yaml"><span class="hljs-bullet"> -</span>
<span class="hljs-string">sursă:</span> <span class="hljs-string">'/siteweb/documente_versionate/**/*.md'</span>
<span class="hljs-attr"> traducere:</span> <span class="hljs-string">'/siteweb/documente_traduses/%locale%/**/%original_file_name%'</span>
<span class="hljs-attr"> mapping_limbi:</span> <span class="hljs-meta">*anchor</span>
</code></pre>
<p>Documentele traduse, versionate vor fi copiate în <code>siteweb/documente_traduse/${language}/${version}/</code>.</p>
</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="navigation">← Navigation and Sidebars</a><a class="docs-next button" href="versioning">Versioning →</a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#configurații-traduceri-docusaurus">Configurații traduceri Docusaurus</a></li><li><a href="#traducand-documentele-tale-existente">Traducând documentele tale existente</a></li><li><a href="#activand-traducerile-pe-pagini">Activând traducerile pe Pagini</a></li><li><a href="#adunand-șirurile-pentru-a-traduce">Adunând șirurile pentru a Traduce</a></li><li><a href="#cum-se-traduc-șirurile">Cum se traduc șirurile</a></li><li><a href="#cum-folosește-docusaurus-traducerile-de-șiruri">Cum folosește Docusaurus traducerile de șiruri</a><ul class="toc-headings"><li><a href="#șiruri">Șiruri</a></li><li><a href="#fișiere-markdown">Fișiere Markdown</a></li><li><a href="#alte-pagini">Alte pagini</a></li></ul></li><li><a href="#crowdin">Crowdin</a><ul class="toc-headings"><li><a href="#setup-the-crowdin-scripts">Setup the Crowdin Scripts</a></li><li><a href="#sincronizare-fișier-manuală">Sincronizare fișier manuală</a></li><li><a href="#automated-file-sync-using-circleci">Automated File Sync Using CircleCI</a></li></ul></li><li><a href="#traduceri-versionate">Traduceri versionate</a></li></ul></nav></div><footer class="nav-footer" id="footer"><section class="sitemap"><a href="/" class="nav-home"><img src="/img/docusaurus_monochrome.svg" alt="Docusaurus" width="66" height="58"/></a><div><h5>Docs</h5><a href="
/docs/ro/installation.html">Getting Started</a><a href="
/docs/ro/versioning.html">Versioning</a><a href="
/docs/ro/translation.html">Localization</a><a href="
/docs/ro/search.html">Adding Search</a></div><div><h5>Community</h5><a href="/ro/users.html">User Showcase</a></div><div><h5>More</h5><div class="social"><a class="github-button" href="https://github.com/facebook/Docusaurus" data-count-href="/facebook/Docusaurus/stargazers" data-show-count="true" data-count-aria-label="# stargazers on GitHub" aria-label="Star this project on GitHub">Docusaurus</a></div><div class="social"><a href="https://twitter.com/docusaurus" class="twitter-follow-button">Follow @docusaurus</a></div><div class="social"><div class="fb-like" data-href="https://docusaurus.io" data-layout="standard" data-share="true" data-width="225" data-show-faces="false"></div></div></div></section><a href="https://code.facebook.com/projects/" target="_blank" rel="noreferrer noopener" class="fbOpenSource"><img src="/img/oss_logo.png" alt="Facebook Open Source" width="170" height="45"/></a><section class="copyright"><span>Copyright © 2018 Facebook Inc.</span></section></footer></div><script type="text/javascript" src="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.js"></script><script>window.fbAsyncInit = function() {FB.init({appId:'199138890728411',xfbml:true,version:'v2.7'});};(function(d, s, id){var js, fjs = d.getElementsByTagName(s)[0];if (d.getElementById(id)) {return;}js = d.createElement(s); js.id = id;js.src = '//connect.facebook.net/en_US/sdk.js';fjs.parentNode.insertBefore(js, fjs);}(document, 'script','facebook-jssdk'));
</script><script>window.twttr=(function(d,s, id){var js,fjs=d.getElementsByTagName(s)[0],t=window.twttr||{};if(d.getElementById(id))return t;js=d.createElement(s);js.id=id;js.src='https://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js, fjs);t._e = [];t.ready = function(f) {t._e.push(f);};return t;}(document, 'script', 'twitter-wjs'));</script><script>
var search = docsearch({
apiKey: '3eb9507824b8be89e7a199ecaa1a9d2c',
indexName: 'docusaurus',
inputSelector: '#search_input_react'
});
</script></body></html>