بنیادی تصورات

18ways چند چیزوں کے بارے میں واضح رائے رکھتا ہے۔ جب یہ باتیں صاف ہو جائیں، تو API کے باقی حصے کو سمجھنا سیدھا سادا ہے۔

بنیادی لوکیل

آپ کی baseLocale وہ زبان ہے جس میں آپ لکھتے ہیں۔

اگر آپ کی پروڈکٹ کا متن برطانوی انگریزی میں لکھا گیا ہے، تو آپ کا بیس لوکل en-GB ہے۔ اگر یہ امریکی انگریزی میں لکھا گیا ہے تو آپ کا بیس لوکل en-US ہے۔

جب موجودہ لوکیل بیس لوکیل سے ملتی ہے، تو 18ways فوراً ماخذ متن واپس کر دیتا ہے اور ترجمے کا کام چھوڑ دیتا ہے۔

ٹارگٹ لوکیل

آپ کا ہدف مقام وہ زبان ہے جسے صارف اس وقت پڑھ رہا ہے۔

Next.js میں، اڈاپٹر اسے middleware، cookies، pathname، اور browser preferences سے resolve کر سکتا ہے۔

سیاق و سباق

کانٹیکسٹس وہ طریقہ ہیں جس سے 18ways متعلقہ کاپی کو گروپ کرتا ہے۔

انہیں ترجمے کی درخواستوں کو چھوٹا رکھنے اور غیر متعلقہ متن کو آپس میں ملانے سے بچنے کے لیے استعمال کریں۔

tsx
'use client';
 
import { Ways } from '@18ways/react';
 
export function MarketingPage() {
  return (
    <Ways context="marketing">
      <Ways context="hero">
        <Hero />
      </Ways>
      <Ways context="pricing">
        <Pricing />
      </Ways>
    </Ways>
  );
}

Nested Ways scopes ایک context path میں compose ہوتے ہیں۔ marketing plus hero بن جاتا ہے marketing.hero۔

قبول شدہ لوکیلز

18ways میں فرق کیا جاتا ہے:

  • ایک لوکیل جسے یہ پہچان سکے، جیسے fr-FR
  • ایک لوکیل جسے آپ کا پروجیکٹ واقعی قبول کرتا ہے

رن ٹائم API سے منظور شدہ لوکیلز کی فہرست حاصل کر سکتا ہے، پھر آنے والی لوکیل ویلیوز کو اس فہرست کے مطابق نارملائز کر سکتا ہے۔

اسی لیے @18ways/next ایسی معقول چیزیں کر سکتا ہے جیسے /en-US/docs کو /en-GB/docs پر ری ڈائریکٹ کرنا جب صرف en-GB فعال ہو۔

ts
import type { WaysConfig } from '@18ways/next/config';
 
export default {
  apiKey: 'pk_dummy_demo_token',
  baseLocale: 'en-GB',
  router: 'app', // 'app', 'path', or 'none' depending on if you use app router, path router, or if you don't want the router to sync with locale at all
} satisfies WaysConfig;

استقامت

رن ٹائم کے ذریعے استعمال ہونے والی لوکیل ترجیح کی کوکی 18ways_locale ہے۔

جب تراجم لوڈ ہوتے ہیں

@18ways/next سرور پر لوکیل حل کر سکتا ہے، کانٹیکسٹ تراجم کی بنیاد رکھ سکتا ہے، اور ترجمہ شدہ میٹاڈیٹا جاری کر سکتا ہے۔

مشترکہ ذہنی ماڈل

ماڈل کو سادہ رکھیں:

  1. اپنی ایپ کے لیے درست پیکیج منتخب کریں۔
  2. بنیادی لوکیل درست طریقے سے سیٹ کریں۔
  3. کانٹیکسٹ کیز کو مستقل اور بامعنی رکھیں۔
  4. رَن ٹائم کو مکمل جملے ترجمہ کرنے دیں، نہ کہ ٹکڑے۔

اگلا: پیغام کی فارمیٹنگ

بنیادی تصورات