अनुवाद

इस परियोजना का एक बड़ा हिस्सा अनुवादों के लिए समर्थन है। यह प्रक्रिया के कई हिस्सों में निहित है। HTML में एक स्ट्रिंग को निर्दिष्ट करने का मानक तरीका इस प्रकार है: ${i18Next.t("Text to translate")}.

i18Next का उपयोग करके एक बार अनुवाद परिभाषित किया गया, तो उसे संभालने के लिए 3 संभावित तरीके हैं।

  1. Manual - स्थान फ़ाइलें (*.json फ़ाइलें) अनुवाद के लिए कुंजी के साथ अद्यतित की गई हैं और उनके चारों ओर [[ और ]] हैं। यह आपको अपनी पसंद से मैनुअल अनुवाद करने की अनुमति देने के लिए है। आप मदद के लिए "translateManualFile.md" प्रॉम्प्ट का भी उपयोग कर सकते हैं।
  2. GoogleTranslate - यह आइटम का अनुवाद करने के लिए Google Translate API का उपयोग करता है। यह जो विकल्प मैंने देखा है उनमें से यह सबसे सस्ते और अधिक विश्वसनीय विकल्पों में से एक है। एकमात्र सीमा जिसका मैं सामना कर चुका हूँ वह यह है कि यह अलग अलग बहुवचन रूपों को ठीक से संभाल नहीं पाता। इसलिए आपको i18Next की बहुवचन सुविधा का उपयोग करने वाली किसी भी चीज़ के लिए OpenAI या मैन्युअल का उपयोग करने की आवश्यकता हो सकती है।
  3. OpenAI - यह आइटम का अनुवाद करने के लिए OpenAI API का उपयोग करता है। यह सबसे महंगा विकल्प है जो मैंने देखा है। यह सबसे लचीला भी है। यह विभिन्न बहुवचन रूपों को अच्छी तरह से संभाल सकता है। यह और अधिक जटिल वाक्यों को भी संभाल सकता है। यह नई भाषाओं को संभालने में भी सबसे सक्षम है।

आपके build.ts में इस्तेमाल की जाने वाली अनुवाद सेटिंग और staticSiteBuild कॉल के लिए translationSource प्रॉपर्टी परिभाषित की गई है।