इसे छोड़कर कंटेंट पर जाएं

परिशिष्ट 3: XOOPS का स्थानीय भाषा में अनुवाद करना

XOOPS 2.7.0 केवल अंग्रेजी भाषा की फाइलों के साथ भेजा जाता है। अन्य भाषाओं में अनुवाद समुदाय द्वारा बनाए रखा जाता है और GitHub और विभिन्न स्थानीय XOOPS समर्थन साइटों के माध्यम से वितरित किया जाता है।

मौजूदा अनुवाद कहां खोजें

Section titled “मौजूदा अनुवाद कहां खोजें”
  • GitHub - सामुदायिक अनुवाद तेजी से XOOPS संगठन के अंतर्गत और व्यक्तिगत योगदानकर्ताओं के खातों पर अलग-अलग रिपॉजिटरी के रूप में प्रकाशित हो रहे हैं। xoops-language-<your-language> के लिए GitHub खोजें या वर्तमान पैकेजों के लिए XOOPS संगठन ब्राउज़ करें।
  • स्थानीय XOOPS समर्थन साइटें — कई क्षेत्रीय XOOPS समुदाय अपनी साइटों पर अनुवाद प्रकाशित करते हैं। https://xoops.org पर जाएं और स्थानीय समुदायों के लिंक का अनुसरण करें।
  • मॉड्यूल अनुवाद - व्यक्तिगत समुदाय मॉड्यूल के लिए अनुवाद आम तौर पर XoopsModules25x GitHub संगठन में मॉड्यूल के बगल में रहते हैं (नाम में 25x ऐतिहासिक है; वहां मॉड्यूल XOOPS 2.5.x और 2.7.x दोनों के लिए बनाए रखा जाता है)।

यदि आपकी भाषा के लिए अनुवाद पहले से मौजूद है, तो भाषा निर्देशिकाओं को अपने XOOPS इंस्टॉल में छोड़ें (नीचे “अनुवाद कैसे स्थापित करें” देखें)।

जिसका अनुवाद करने की आवश्यकता है

Section titled “जिसका अनुवाद करने की आवश्यकता है”

XOOPS 2.7.0 भाषा फ़ाइलों को उस कोड के बगल में रखता है जो उनका उपभोग करता है। संपूर्ण अनुवाद में इन सभी स्थानों को शामिल किया गया है:

  • कोरhtdocs/language/english/ — प्रत्येक पृष्ठ द्वारा उपयोग किए जाने वाले साइट-व्यापी स्थिरांक (लॉगिन, सामान्य त्रुटियां, तिथियां, मेल टेम्पलेट्स, आदि)।
  • इंस्टॉलरhtdocs/install/language/english/ — इंस्टॉलेशन विज़ार्ड द्वारा दिखाए गए तार। यदि आप स्थानीयकृत इंस्टाल अनुभव चाहते हैं तो इंस्टॉलर चलाने से पहले इनका अनुवाद करें।
  • सिस्टम मॉड्यूलhtdocs/modules/system/language/english/ — अब तक का सबसे बड़ा सेट; संपूर्ण व्यवस्थापक नियंत्रण कक्ष को कवर करता है।
  • बंडल किए गए मॉड्यूल - प्रत्येक htdocs/modules/pm/language/english/, htdocs/modules/profile/language/english/, htdocs/modules/protector/language/english/, और htdocs/modules/debugbar/language/english/
  • थीम - कुछ थीम अपनी भाषा में फ़ाइलें भेजती हैं; यदि यह मौजूद है तो htdocs/themes/<theme>/language/ जांचें।

एक “केवल कोर” अनुवाद न्यूनतम उपयोगी इकाई है और ऊपर दिए गए पहले दो बुलेट से मेल खाता है।

अनुवाद कैसे करें

Section titled “अनुवाद कैसे करें”
  1. इसके आगे english/ निर्देशिका को कॉपी करें और कॉपी का नाम अपनी भाषा में बदलें। निर्देशिका का नाम भाषा का लोअरकेस अंग्रेजी नाम (spanish, german, french, japanese, arabic, आदि) होना चाहिए।

    htdocs/language/english/ → htdocs/language/spanish/
  2. नई निर्देशिका में प्रत्येक .php फ़ाइल खोलें और define() कॉल के अंदर स्ट्रिंग मान का अनुवाद करें। स्थिर नामों को नहीं बदलें - वे पूरे कोर में PHP कोड से संदर्भित होते हैं।

    // Before:
    define('_CM_COMDELETED', 'Comment(s) deleted.');
    define('_CM_COMDELETENG', 'Could not delete comment.');
    define('_CM_DELETESELECT', 'Delete all its child comments?');
    // After (Spanish):
    define('_CM_COMDELETED', 'Comentario(s) eliminado(s).');
    define('_CM_COMDELETENG', 'No se pudo eliminar el comentario.');
    define('_CM_DELETESELECT', '¿Eliminar también todos sus comentarios secundarios?');
  3. प्रत्येक फ़ाइल को बिना BOM के UTF-8 के रूप में सहेजें। XOOPS2.7.0 utf8mb4 एंड-टू-एंड (डेटाबेस, सत्र, आउटपुट) का उपयोग करता है और बाइट-ऑर्डर चिह्न वाली फ़ाइलों को अस्वीकार करता है। नोटपैड++ में यह “UTF-8” विकल्प है, नहीं “UTF-8-BOM”। वीएस कोड में यह डिफ़ॉल्ट है; बस स्टेटस बार में एन्कोडिंग की पुष्टि करें।

  4. अपनी भाषा से मिलान करने के लिए प्रत्येक फ़ाइल के शीर्ष पर भाषा और वर्णसेट मेटाडेटा को अपडेट करें:

    // _LANGCODE: es
    // _CHARSET : UTF-8
    // Translator: Your Name

    _LANGCODE आपकी भाषा के लिए ISO 639-1 कोड होना चाहिए। _CHARSET XOOPS 2.7.0 में हमेशा UTF-8 होता है - अब ISO-8859-1 संस्करण नहीं है।

  5. इंस्टॉलर, सिस्टम मॉड्यूल और आपके लिए आवश्यक किसी भी बंडल मॉड्यूल के लिए दोहराएं।

अनुवाद कैसे स्थापित करें

Section titled “अनुवाद कैसे स्थापित करें”

यदि आपने निर्देशिका वृक्ष के रूप में पूर्ण अनुवाद प्राप्त किया है:1. प्रत्येक <language>/ निर्देशिका को अपने XOOPS इंस्टॉल में मेल खाने वाले language/english/ पैरेंट में कॉपी करें। उदाहरण के लिए, language/spanish/ को htdocs/language/ में, install/language/spanish/ को htdocs/install/language/ में कॉपी करें, इत्यादि। 2. सुनिश्चित करें कि फ़ाइल स्वामित्व और अनुमतियाँ वेब सर्वर द्वारा पढ़ने योग्य हैं। 3. या तो इंस्टॉल समय पर नई भाषा चुनें (विज़ार्ड उपलब्ध भाषाओं के लिए htdocs/language/ स्कैन करता है) या, किसी मौजूदा साइट पर, एडमिन → सिस्टम → प्राथमिकताएं → सामान्य सेटिंग्स में भाषा बदलें।

अपना अनुवाद वापस साझा करना

Section titled “अपना अनुवाद वापस साझा करना”

कृपया अपना अनुवाद समुदाय में वापस योगदान करें।

  1. एक GitHub रिपॉजिटरी बनाएं (या यदि आपकी भाषा के लिए कोई मौजूदा भाषा रिपॉजिटरी मौजूद है तो उसे फोर्क करें)।

  2. स्पष्ट नाम का उपयोग करें जैसे xoops-language-<language-code> (जैसे xoops-language-es, xoops-language-pt-br)।

  3. अपने रिपॉजिटरी के अंदर XOOPS निर्देशिका संरचना को मिरर करें ताकि फ़ाइलें जहां कॉपी की जाएं, वहां पंक्तिबद्ध हो जाएं:

    xoops-language-es/
    ├── language/spanish/(files).php
    ├── install/language/spanish/(files).php
    └── modules/system/language/spanish/(files).php
  4. README.md दस्तावेज़ शामिल करें:

    • भाषा का नाम और आईएसओ कोड
    • XOOPS संस्करण अनुकूलता (उदा. XOOPS 2.7.0+)
    • अनुवादक और क्रेडिट
    • क्या अनुवाद केवल कोर है या बंडल मॉड्यूल को कवर करता है
  5. GitHub पर संबंधित मॉड्यूल/कोर रिपॉजिटरी के विरुद्ध एक पुल अनुरोध खोलें या https://xoops.org पर एक घोषणा पोस्ट करें ताकि समुदाय इसे ढूंढ सके।

नोट

यदि आपकी भाषा में दिनांक या कैलेंडर स्वरूपण के लिए मूल परिवर्तन की आवश्यकता है, तो पैकेज में उन परिवर्तनों को भी शामिल करें। दाएँ से बाएँ स्क्रिप्ट (अरबी, हिब्रू, फ़ारसी, उर्दू) वाली भाषाएँ XOOPS 2.7.0 में बॉक्स से बाहर काम करती हैं - इस रिलीज़ में RTL समर्थन जोड़ा गया था और व्यक्तिगत थीम इसे स्वचालित रूप से उठाती हैं।