د TacoTranslate کارول
د متنونو ژباړه
اوس مهال د متنونو د ژباړې درې لارې شته: د Translate کمپوننټ، د useTranslation هوک، یا د translateEntries وسیله.
د Translate کمپونینټ کارول.
ژباړې په span عنصر کې ښکاره کوي، او د HTML ښودلو ملاتړ کوي.
import {Translate} from 'tacotranslate/react';
function Page() {
return <Translate string="Hello, world!" />;
}تاسو کولی شئ د عنصر ډول بدل کړئ، د بېلګې په توګه په کمپوننټ کې as="p".
د useTranslation هوک کارول.
ژباړې د ساده متن په توګه بېرته ورکوي. د بېلګې په توګه، په meta ټاګونو کې ګټور دی.
import {useEffect} from 'react';
import {useTranslation} from 'tacotranslate/react';
function Page() {
const helloWorld = useTranslation('Hello, world!');
useEffect(() => {
alert(helloWorld);
}, [helloWorld]);
return (
<title>{useTranslation('My page title')}</title>
);
}د translateEntries وسيلې کارول.
متنونه په سرور اړخ کې وژباړئ. خپل OpenGraph انځورونه پیاوړي کړئ.
import {createEntry, translateEntries} from 'tacotranslate';
async function generateMetadata(locale = 'es') {
const title = createEntry({string: 'Hello, world!'});
const description = createEntry({string: 'TacoTranslate on the server'});
const translations = await translateEntries(
tacoTranslate,
{origin: 'opengraph', locale},
[title, description]
);
return {
title: translations(title),
description: translations(description)
};
}څنګه متنونه ژباړل کیږي
کله چې سټرینګونه زموږ سرورونو ته ورسېږي، موږ لومړی یې تایید او ثبت کوو، او بیا سمدلاسه یوه ماشيني ژباړه بېرته وړاندې کوو. که څه هم ماشيني ژباړې عموماً د زموږ د مصنوعي ځیرکتیا (AI) ژباړو په پرتله د کیفیت له پلوه ټیټې وي، خو دوی یو چټک لومړنی ځواب برابروي.
په ورته وخت کې، موږ د ستاسو د متن لپاره د لوړ کیفیت، عصري مصنوعي ذکاوت (AI) ژباړه تولیدولو لپاره یو غیرهمزمان د ژباړې کار پیل کوو. کله چې د مصنوعي ذکاوت ژباړه چمتو شي، دا به د ماشین له خوا جوړې شوې ژباړې ځای ونیسي او هرکله چې تاسو د خپلو متنونو ژباړې غوښتنه وکړئ، لیږل به شي.
که تاسو کوم متن په لاسي ډول وژباړلی وي، هغه ژباړې ته لومړیتوب ورکول کېږي او پرځای یې راستنیږي.
د سرچینو کارول
د TacoTranslate پروژې هغه څه لري چې موږ ورته اصلونه وایو. دوی د ستاسو د متنونو او ژباړو لپاره د ننوتلو نقطو، فولډرونو، یا ډلو په توګه وګڼئ.
import {TacoTranslate} from 'tacotranslate/react';
function Menu() {
return (
<TacoTranslate origin="application-menu">
// ...
</TacoTranslate>
);
}ماخذونه تاسو ته اجازه درکوي چې متنونه په معنی لرونکو کانتینرونو کې جلا کړئ. د بېلګې په توګه، تاسو کولی شئ یو ماخذ د اسنادو لپاره ولرئ او بل د خپل بازارموندنې پاڼې لپاره.
د لا دقیق کنټرول لپاره، تاسو کولی شئ په کمپوننټ کچه کې سرچینې تنظیم کړئ.
د دې د ترلاسه کولو لپاره، په خپل پروژه کې د څو TacoTranslate چمتوونکو کارول په پام کې ونیسئ.
مهرباني وکړئ په یاد ولرئ چې یو شان عبارت ممکن په بېلابېلو سرچینو کې بېلابېلې ژباړې ترلاسه کړي.
په پای کې، دا چې تاسو سترېنګونه څنګه په اصلونو وویشئ ستاسو په خوښه او اړتیاوو پورې اړه لري. په هرصورت، په یوه اصل کې د ډېرو سترېنګونو شتون ممکن د بارولو وخت زیات کړي.
د متغیرونو سمبالول
تاسو باید تل د متحرک مینځپانګې لپاره متغیرونه وکاروئ، لکه د کارونکي نومونه، نېټې، برېښنالیک پتې، او نور.
په سټرینګونو (strings) کې متغیرونه د دوه ګونو بریکټونو په کارولو سره تعریفېږي، لکه {{variable}}.
import {Translate} from 'tacotranslate/react';
function Greeting() {
const name = 'Juan';
return <Translate string="Hello, {{name}}!" variables={{name}} />;
}import {useTranslation} from 'tacotranslate/react';
function useGreeting() {
const name = 'Juan';
return useTranslation('Hello, {{name}}!', {variables: {name}});
}د HTML منځپانګې مدیریت
په ډیفالټ ډول، Translate کمپونینټ د HTML منځپانګې ملاتړ کوي او رندر یې کوي. که وغواړئ، تاسو کولی شئ له دې چلند څخه انصراف وکړئ؛ د دې لپاره useDangerouslySetInnerHTML ته false وټاکئ.
کله چې د بېباوره منځپانګې، لکه د کاروونکي لخوا جوړه شوې منځپانګه ژباړئ، د HTML رینډر کول غیر فعالول په کلکه سپارښتنه کېږي۔
ټولې پایلې تل د sanitize-html په کارولو سره پاکېږي مخکې له دې چې وښودل شي.
import {Translate} from 'tacotranslate/react';
function Page() {
return (
<Translate
string={`
Welcome to <strong>my</strong> website.
I’m using <a href="{{url}}">TacoTranslate</a> to translate text.
`}
variables={{url: 'https://tacotranslate.com'}}
useDangerouslySetInnerHTML={false}
/>
);
}پورته بېلګه به د ساده متن په توګه وړاندې شي.