Skip to main content

छद्म-अनुवाद टूल

लॉन्च से पहले अपने i18n UI की जाँच करें। वास्तविक अनुवादों की प्रतीक्षा किए बिना ऐसे कृत्रिम अनुवाद जनरेट करें, जिनसे लेआउट, एन्कोडिंग और द्विदिश रेंडरिंग की गहन जाँच होती है।

समस्या

आपका UI अंग्रेज़ी में बिल्कुल सही दिखता है। फिर जर्मन आता है—40% लंबी स्ट्रिंग्स हर बटन का लेआउट बिगाड़ देती हैं और हर टेबल हेडर को काट देती हैं। अरबी पूरे लेआउट को उलट देती है और आपके आइकन गलत दिशा में संकेत करने लगते हैं। जापानी के लिए अलग लाइन ऊँचाई चाहिए और सावधानी से तय की गई दूरी वाले आपके कार्ड बिखर जाते हैं। इन सभी समस्याओं का पता आपको अनुवाद के लिए भुगतान करने के बाद चलता है।

अनुवाद के बाद i18n लेआउट बग ठीक करने की औसत लागत, डेवलपमेंट के दौरान उन्हें पकड़ने की तुलना में 5-10x अधिक होती है। छद्म-अनुवाद इन समस्याओं को वास्तविक अनुवाद पर एक भी रुपया खर्च करने से पहले मुफ़्त में पकड़ लेता है।

समाधान

i18n-pseudo वास्तविक अनुवादकों की प्रतीक्षा किए बिना आपके UI की गहन जाँच के लिए कृत्रिम अनुवाद जनरेट करता है। यह ICU प्लेसहोल्डर, बहुवचन सिंटैक्स और इंटरपोलेशन वेरिएबल सुरक्षित रखते हुए 7 रूपांतरण रणनीतियाँ—एक्सेंट, CJK वर्ण, टेक्स्ट विस्तार, RTL मार्कर और अन्य—लागू करता है।

इंस्टॉलेशन

i18n-pseudo एक npm पैकेज और Homebrew फ़ॉर्मूला के रूप में उपलब्ध है या आप इसे Cargo की मदद से सोर्स से बिल्ड कर सकते हैं।

Terminal
npm install -g @i18n-agent/i18n-pseudo
npm पैकेज में एक ग्लोबल CLI बाइनरी शामिल है। किसी रनटाइम डिपेंडेंसी की आवश्यकता नहीं है।

7 रूपांतरण रणनीतियाँ

हर रणनीति i18n बग की किसी खास श्रेणी को लक्षित करती है। फ़्लैग की मदद से उनका अलग-अलग उपयोग करें या प्रीसेट से उन्हें संयोजित करें।

StrategyFlagInputOutput
Accents--accentsHelloĤéľľó
CJK--cjkHello你好世界你好
Special Chars--specialHelloHel­lo
Expansion--expansion NSaveSave~~~~
Brackets--bracketsHello[Hello]
RTL--rtlHello‮Hello‬
Unicode Stress--unicode-stressHelloH́ȩl̈l̀õ
हार्डकोड की गई स्ट्रिंग्स का पता लगाने के लिए एक्सेंट सबसे लोकप्रिय रणनीति है। यदि आपके UI में कोई स्ट्रिंग डायक्रिटिक चिह्नों के बिना दिखाई देती है, तो उसे अनुवाद फ़ंक्शन से कभी गुज़ारा ही नहीं गया।

प्रीसेट

प्रीसेट सामान्य परीक्षण परिदृश्यों के लिए रणनीतियों को एक साथ बाँधते हैं। रणनीतियों का समूह एक साथ लागू करने के लिए --preset का उपयोग करें।

PresetStrategiesUse Case
defaultaccents + bracketsQuick visual check that all strings are externalized
layoutexpansion (1.4x) + bracketsCatch truncation and overflow before real translations
charsetCJK + special + bracketsTest font rendering and character encoding
rtlRTL markers + bracketsVerify bidirectional layout without switching locale
fullAll strategies combinedMaximum stress test — everything at once

उपयोग के उदाहरण

अपनी सोर्स लोकेल फ़ाइल पर i18n-pseudo चलाएँ। यह JSON, YAML, PO और अन्य i18n फ़ॉर्मेट पढ़ता है, चुनी हुई रणनीतियाँ लागू करता है और रूपांतरित आउटपुट लिखता है।

Terminal
# Default (accents + brackets)
i18n-pseudo en.json -o output/

# Layout testing (text expansion + brackets)
i18n-pseudo en.json --preset layout -o output/

# Specific strategies
i18n-pseudo en.json --accents --expansion 1.5 -o output/

# Kitchen sink
i18n-pseudo en.json --preset full -o output/

पहले और बाद में

यहाँ दिखाया गया है कि डिफ़ॉल्ट प्रीसेट (एक्सेंट + ब्रैकेट) किसी सामान्य अनुवाद फ़ाइल को कैसे बदलता है। ध्यान दें कि ICU बहुवचन सिंटैक्स और इंटरपोलेशन प्लेसहोल्डर बिल्कुल सुरक्षित रहते हैं।

Before & After
// Input (en.json):
{
  "greeting": "Hello, {name}!",
  "save": "Save",
  "items": "{count, plural, one {# item} other {# items}}"
}

// Output (default preset — accents + brackets):
{
  "greeting": "[Ĥéľľó, {name}!]",
  "save": "[Šáṽé]",
  "items": "[{count, plural, one {# íťéɱ} other {# íťéɱš}}]"
}
प्लेसहोल्डर, जैसे {name}, {count} और ICU बहुवचन एक्सप्रेशन, कभी नहीं बदले जाते। केवल अनुवाद योग्य टेक्स्ट खंड रूपांतरित किए जाते हैं, इसलिए आपका ऐप छद्म-अनुवादित फ़ाइलों के साथ सही ढंग से रेंडर होता है।

CI इंटीग्रेशन

i18n रिग्रेशन अपने-आप पकड़ने के लिए अपनी CI पाइपलाइन में छद्म-अनुवाद जोड़ें। छद्म-अनुवादित फ़ाइलें जनरेट करें, फिर उनके साथ अपने विज़ुअल रिग्रेशन टेस्ट चलाएँ।

CI Pipeline
# Generate pseudo-translations and run visual regression
i18n-pseudo locales/en.json --preset layout -o locales/pseudo/
NEXT_PUBLIC_LOCALE=pseudo npx playwright test --project=visual
लेआउट प्रीसेट को Playwright या Chromatic विज़ुअल रिग्रेशन परीक्षण के साथ उपयोग करें। 1.4x विस्तारित टेक्स्ट के कारण ओवरफ़्लो या कटने वाला कोई भी कंपोनेंट विज़ुअल डिफ़ में विफल हो जाएगा।

संबंधित टूल और गाइड

i18n Agent अभी आज़माएँ

अपनी अनुवाद फ़ाइल यहाँ छोड़ें

JSON, YAML, PO, XML, CSV, Markdown, Properties

या ब्राउज़ करने के लिए क्लिक करें

लक्षित भाषाएँ

साइन अप की ज़रूरत नहींतुरंत अनुमान

अक्सर पूछे जाने वाले प्रश्न