TacoTranslate
/
ডকুমেন্টেশনমূল্য
 
  1. ভূমিকা
  2. শুরু করা
  3. সেটআপ এবং কনফিগারেশন
  4. TacoTranslate ব্যবহার করা
  5. সার্ভার-সাইড রেন্ডারিং
  6. উন্নত ব্যবহার
  7. সেরা অনুশীলন
  8. ত্রুটি পরিচালনা এবং ডিবাগিং
  9. সমর্থিত ভাষাগুলি

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 অনুবাদ তৈরি করতে একটি অ্যাসিঙ্ক্রোনাস অনুবাদ কর্ম আরম্ভ করি। AI অনুবাদ প্রস্তুত হলে, এটি মেশিন অনুবাদকে প্রতিস্থাপন করবে এবং আপনি যখনই আপনার স্ট্রিংগুলোর অনুবাদ অনুরोध করবেন তখন সেটি পাঠানো হবে।

আপনি যদি কোনো স্ট্রিং ম্যানুয়ালি অনুবাদ করে থাকেন, তাহলে সেই অনুবাদগুলোকে অগ্রাধিকার দেওয়া হবে এবং সেগুলোই ফেরত পাঠানো হবে।

উৎস ব্যবহার

TacoTranslate প্রকল্পগুলোতে রয়েছে যাকে আমরা origins বলি। এগুলোকে আপনার স্ট্রিং এবং অনুবাদের জন্য এন্ট্রি পয়েন্ট, ফোল্ডার বা গ্রুপ হিসেবে ভাবুন।

import {TacoTranslate} from 'tacotranslate/react';

function Menu() {
	return (
		<TacoTranslate origin="application-menu">
			// ...
		</TacoTranslate>
	);
}

উৎস আপনাকে স্ট্রিংগুলোকে অর্থবহ কনটেইনারে আলাদা করতে দেয়। উদাহরণস্বরূপ, আপনি ডকুমেন্টেশনের জন্য একটি উৎস এবং আপনার মার্কেটিং পৃষ্ঠার জন্য আরেকটি উৎস রাখতে পারেন।

আরও সূক্ষ্ম নিয়ন্ত্রণের জন্য, আপনি কম্পোনেন্ট স্তরে origins সেট আপ করতে পারেন।

এটি অর্জন করতে আপনার প্রকল্পে একাধিক TacoTranslate প্রোভাইডার ব্যবহার করার কথা বিবেচনা করুন।

অনুগ্রহ করে মনে রাখবেন যে একই স্ট্রিংটি বিভিন্ন অরিজিনে ভিন্নভাবে অনুবাদ হতে পারে।

অবশেষে, আপনি কীভাবে স্ট্রিংগুলোকে ওরিজিনে ভাগ করবেন তা আপনার এবং আপনার চাহিদার উপর নির্ভর করে। তবে, লক্ষ্য করুন যে একটী ওরিজিনে অনেক স্ট্রিং থাকলে লোডিং সময় বৃদ্ধি পেতে পারে।

ভেরিয়েবলগুলি পরিচালনা

গতিশীল সামগ্রীর জন্য আপনাকে সর্বদা চলক ব্যবহার করা উচিত, যেমন ব্যবহারকারীর নাম, তারিখ, ইমেইল ঠিকানা ইত্যাদি।

স্ট্রিংগুলিতে ভেরিয়েবলগুলি ডাবল ব্র্যাকেট ব্যবহার করে ঘোষণা করা হয়, যেমন {{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}
		/>
	);
}

উপরের উদাহরণটি সাধারণ টেক্সট হিসেবে প্রদর্শিত হবে।

সার্ভার-সাইড রেন্ডারিং

একটি পণ্য Nattskiftet থেকেনরওয়েতে তৈরি