Author:
    Creation:2025-09-22Last update:2025-09-22

    नया Intlayer v6 - क्या नया है?

    Intlayer v6 में आपका स्वागत है! यह रिलीज़ प्रदर्शन, डेवलपर अनुभव, और विश्वसनीयता पर केंद्रित है। नीचे मुख्य बिंदु दिए गए हैं, साथ ही माइग्रेशन नोट्स और कॉपी-पेस्ट करने योग्य उदाहरण।

    विषय सूची

    मुख्य बिंदु

    • नया कमांड: npx intlayer content test जो गायब अनुवादों का पता लगाता है
    • नया वैश्विक autoFill विकल्प जो गायब अनुवादों को स्वचालित रूप से उत्पन्न करता है
    • Fill कमांड डिफ़ॉल्ट रूप से मौजूदा अनुवादों को छोड़ देता है: npx intlayer fill
    • VS Code एक्सटेंशन: नया Intlayer एक्टिविटी बार (खोज और शब्दकोश), टूलबार/संदर्भ क्रियाएं, ऑटो-रिवील, Fill/Test कमांड
    • प्रॉमिस पैरेललाइजेशन के कारण 10× तेज़ बिल्ड
    • ऐप शुरू होने पर पुनः प्राप्ति से बचने के लिए रिमोट शब्दकोश कैशिंग
    • बेहतर लॉगिंग: व्यवहार जांचने के लिए log.mode: 'verbose' सेट करें
    • शब्दकोश समस्याओं पर ऐप क्रैश को रोकने के लिए मजबूत सत्यापन
    • CMS के साथ लाइव अपडेट्स के लिए build.importMode = 'live' और pnpm intlayer live का उपयोग करें
    • सुधार: Vue.js एकीकरण, Lynx एडाप्टर, Windows पर विज़ुअल एडिटर

    नया: गायब अनुवादों का परीक्षण करें

    अपने प्रोजेक्ट का तेजी से ऑडिट करें ताकि पता चल सके कि कौन से कुंजी/स्थानीय भाषाएं गायब हैं।

    bash
    npx intlayer content test

    आउटपुट:

    bash
    pnpm intlayer content testगायब अनुवाद: - blog-data       - जापानी (ja), कोरियाई (ko), चीनी (zh), जर्मन (de), इतालवी (it) - src/components/BlogPage/blogData.content.ts - demo-page       - फ्रेंच (fr), इतालवी (it)                                         - src/components/DemoPage/demo.content.ts - locale-switcher - इतालवी (it), पुर्तगाली (pt)                                       - src/components/LocaleSwitcher/localeSwitcher.content.tsस्थानीय भाषाएं: अंग्रेज़ी (en), रूसी (ru), जापानी (ja), फ्रेंच (fr), कोरियाई (ko), चीनी (zh), स्पेनिश (es), जर्मन (de), अरबी (ar), इतालवी (it), ब्रिटिश अंग्रेज़ी (en-GB), पुर्तगाली (pt), हिंदी (hi)आवश्यक स्थानीय भाषाएं: अंग्रेज़ी (en)गायब स्थानीय भाषाएं: जापानी (ja), कोरियाई (ko), चीनी (zh), जर्मन (de), इतालवी (it), फ्रेंच (fr), पुर्तगाली (pt)गायब आवश्यक स्थानीय भाषाएं: -कुल गायब स्थानीय भाषाएं: 7कुल गायब आवश्यक स्थानीय भाषाएं: 0

    अधिक विकल्प CLI दस्तावेज़ों में देखें: CLI संदर्भ → "गायब अनुवादों का परीक्षण करें"। साथ ही परीक्षण मार्गदर्शिका।


    नया: गायब अनुवादों को पूरा करने के लिए वैश्विक autoFill

    अब आप वैश्विक रूप से auto-fill सक्षम कर सकते हैं ताकि किसी भी शब्दकोश में गायब अनुवाद अपने आप पूरे हो जाएं।

    intlayer.config.ts
    import { type IntlayerConfig, Locales } from "intlayer";const config: IntlayerConfig = {  internationalization: {    locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],    defaultLocale: Locales.ENGLISH,    requiredLocales: [Locales.ENGLISH, Locales.FRENCH],  },  content: {    // सभी शब्दकोशों के लिए गायब अनुवादों को स्वचालित रूप से उत्पन्न करें    autoFill: "./{{fileName}}.content.ts",    //    // autoFill: "/messages/{{locale}}/{{key}}/{{fileName}}.content.json",    //    // autoFill: true, // सभी शब्दकोशों के लिए गायब अनुवादों को स्वचालित रूप से उत्पन्न करें जैसे कि "./{{fileName}}.content.json" का उपयोग करना    //    // autoFill: {    //   en: "./{{fileName}}.en.content.json",    //   fr: "./{{fileName}}.fr.content.json",    //   es: "./{{fileName}}.es.content.json",    // },  },};export default config;

    आप अभी भी कंटेंट फ़ाइलों में autoFill फ़ील्ड का उपयोग करके प्रति शब्दकोश सूक्ष्म समायोजन कर सकते हैं। पूर्ण संदर्भ के लिए doc/autoFill और doc/dictionary/content_file देखें।


    Fill कमांड: सुरक्षित डिफ़ॉल्ट्स

    Fill कमांड अब, डिफ़ॉल्ट रूप से, केवल गायब अनुवादों को भरता है और मौजूदा सामग्री को छोड़ देता है।

    bash
    npx intlayer fill
    bash
    प्रसंस्करण के लिए प्रभावित शब्दकोश कुंजियाँ: access-key-creation-form-schema, doc-search-metadata, doc-search-page  - [access-key-creation-form-schema]      शब्दकोश के पास फ़ाइल पथ नहीं है। छोड़ दिया जा रहा है।  - [access-key-creation-form-schema]      सामग्री घोषणा संसाधित की जा रही है: src/components/Dashboard/ProjectForm/AccessKey/useAccessKeyCreationFormSchema.content.ts  - [access-key-creation-form-schema]      भरने के लिए कोई लोकल नहीं - शब्दकोश छोड़ दिया जा रहा है  - [doc-search-metadata]                  शब्दकोश के पास फ़ाइल पथ नहीं है। छोड़ दिया जा रहा है।  - [doc-search-metadata]                  सामग्री घोषणा संसाधित की जा रही है: src/app/[locale]/(docs)/doc/search/metadata.content.ts  - [doc-search-metadata]                  भरने के लिए कोई लोकल नहीं - शब्दकोश छोड़ दिया जा रहा है  - [doc-search-page]                      शब्दकोश के पास फ़ाइल पथ नहीं है। छोड़ दिया जा रहा है।  - [doc-search-page]                      सामग्री घोषणा संसाधित की जा रही है: src/app/[locale]/(docs)/doc/search/page.content.ts  - [doc-search-page]                     [रूसी (ru)]                   अंग्रेज़ी (en) से रूसी (ru) के लिए शब्दकोश का अनुवाद तैयार किया जा रहा है[intlayer]  src/app/[locale]/(docs)/doc/search/page.content.ts पर Prettier फॉर्मेटिंग लागू की गई  - [doc-search-page]                      सामग्री घोषणा src/app/[locale]/(docs)/doc/search/page.content.ts में लिखी गई

    CI उदाहरण CI/CD में उपलब्ध हैं।


    अपडेटेड VS कोड एक्सटेंशन

    एक्सटेंशन अब एक्टिविटी बार में एक समर्पित Intlayer टैब और कई वर्कफ़्लो सुधार शामिल करता है:

    • Intlayer एक्टिविटी बार में दो दृश्य:
      • लाइव शब्दकोश/सामग्री खोज के लिए सर्च वेबव्यू (intlayer.searchBar)
      • डिक्शनरीज़ ट्री (intlayer.dictionaries) जो पर्यावरण, शब्दकोश, और योगदान करने वाली फ़ाइलों को सूचीबद्ध करता है
    • डिक्शनरीज़ दृश्य पर टूलबार: बिल्ड, पुल, पुश, फिल, रिफ्रेश, टेस्ट, डिक्शनरी फ़ाइल बनाएँ
    • संदर्भ मेनू: शब्दकोशों पर पुल/पुश; फ़ाइलों पर फिल
    • ऑटो-रिवील: जब लागू हो, तो वर्तमान संपादक फ़ाइल डिक्शनरीज़ ट्री में हाइलाइट की जाती है
    • कमांड पैलेट से उपलब्ध नए कमांड: डिक्शनरीज़ भरें और डिक्शनरीज़ का परीक्षण करें

    विवरण के लिए आधिकारिक VS कोड एक्सटेंशन दस्तावेज़ देखें।


    प्रदर्शन: 10× तेज़

    • स्थानीय और दूरस्थ डिक्शनरीज़ का समानांतर समाधान
    • ऐप स्टार्टअप पर पुनः प्राप्ति से बचने के लिए दूरस्थ डिक्शनरीज़ कैश की जाती हैं
    bash
    npx intlayer build

    आउटपुट:

    bash
    [intlayer]  Intlayer तैयार कर रहा है (v6.0.1)[intlayer]  डिक्शनरीज़:[intlayer]  ✓ स्थानीय सामग्री: 163/163[intlayer]  ✓ दूरस्थ सामग्री: 100/100[intlayer]   - access-key-creation-form             [local: ✔ built] [distant: ✔ imported][intlayer]   - access-key-creation-form-schema      [local: ✔ built] [distant: ✔ imported][intlayer]   - access-key-form                      [local: ✔ built] [distant: ✔ imported][intlayer]   - ai-ab-testing-section                                 [distant: ✔ imported][intlayer]   - application-not-running-view         [local: ✔ built] [distant: ✔ imported][intlayer]   - application-template-message         [local: ✔ built] [distant: ✔ fetched][intlayer]   - aside-navigation                     [local: ✔ built] [distant: ✔ imported][intlayer]   - ask-reset-password                   [local: ✔ built] [distant: ✔ imported][intlayer]   - ask-reset-password-schema            [local: ✔ built] [distant: ✔ imported][intlayer]   - autocompletion-section               [local: ✔ built] [distant: ✔ fetched][intlayer]   - available-techno-section             [local: ✔ built] [distant: ✔ imported][intlayer]   - blog-data                            [local: ✔ built][intlayer]   - blog-metadata                        [local: ✔ built][intlayer]   - blog-nav-list                        [local: ✔ built] [distant: ✔ imported][intlayer]   - blog-page                                             [distant: ✔ fetched][intlayer]   - blog-search-metadata                 [local: ✔ built] [distant: ✔ imported][intlayer]   - blog-search-page                     [local: ✔ built] [distant: ✔ imported]...[intlayer]  सामग्री लोड हो गई (कुल: 8401ms - स्थानीय: 4050ms - दूरस्थ: 4222ms)

    लॉगिंग सुधार

    लॉगिंग सिस्टम को बेहतर बनाया गया है ताकि बिल्ड और रनटाइम ट्रांसफॉर्मेशन के दौरान क्या होता है, इसकी अधिक विस्तृत जानकारी प्रदान की जा सके।

    बिल्ड और रनटाइम ट्रांसफॉर्मेशन के दौरान क्या होता है, इसे बेहतर समझने के लिए विस्तृत लॉग सक्षम करें।
    intlayer.config.ts
    export default {  log: {    mode: "verbose", // विकल्प: "default" | "verbose" | "disabled"  },};

    सभी लॉगिंग विकल्पों के लिए Configuration देखें।


    मजबूत सत्यापन

    डिक्शनरी प्रोसेसिंग अब अधिक मजबूत सत्यापन करता है। जब कोई डिक्शनरी प्रोसेस करने में विफल होती है, तो Intlayer आपके एप्लिकेशन को टूटने से बचाता है और क्रियाशील त्रुटियाँ प्रदर्शित करता है।


    CMS के साथ लाइव अपडेट (प्रोडक्शन-सुरक्षित)

    प्रोडक्शन में बिना अपने एप्लिकेशन को पुनः बिल्ड किए लाइव कंटेंट अपडेट (जैसे, संपादकीय अपडेट) सर्व करें।

    1. लाइव इम्पोर्ट मोड सक्षम करें:
    intlayer.config.ts
    import { type IntlayerConfig } from "intlayer";const config: IntlayerConfig = {  build: {    importMode: "live", // "static" | "dynamic" | "live"  },  editor: {    liveSync: true, // सर्वर साइड पर लाइव सिंक सक्षम करें  },};export default config;
    1. अपने ऐप को चलाएं और लाइव प्रोसेस साथ-साथ करें:
    bash
    npx intlayer live --with 'vite preview'

    नोट्स:

    • केवल वे डिक्शनरी जो लाइव मोड के लिए चिह्नित हैं, उन्हें लाइव फेच किया जाएगा। अन्य प्रदर्शन के लिए अनुकूलित हैं।
    • यदि लाइव API उपलब्ध नहीं है तो डायनामिक इम्पोर्ट पर वापस चला जाता है।

    पूरा मार्गदर्शन प्राप्त करने के लिए CMS और लाइव सिंक और कॉन्फ़िगरेशन देखें।


    Turbopack पर फ़ाइलों को देखने के लिए समानांतर प्रक्रिया

    जब आप अपने development server के रूप में next dev --turbopack कमांड के साथ Next.js 14 और उससे ऊपर पर Turbopack का उपयोग कर रहे हों, तो dictionary में होने वाले परिवर्तन डिफ़ॉल्ट रूप से स्वचालित रूप से पहचाने नहीं जाएंगे।

    यह सीमा इसलिए होती है क्योंकि Turbopack आपकी content फ़ाइलों में परिवर्तनों की निगरानी करने के लिए webpack plugins को समानांतर में चलाने में सक्षम नहीं है।

    इसके आस-पास काम करने के लिए, हमने intlayer watch कमांड को छोड़ दिया है, --with विकल्प का उपयोग करके development server और Intlayer build watcher दोनों को एक साथ चलाते हैं।

    package.json
    {  "scripts": {    "dev": "npx intlayer watch --with 'next dev --turbopack'",  },}

    माइग्रेशन नोट्स

    • हटाया गया: dictionaryOutput (पहले i18next या next-intl)। यह भविष्य के संस्करणों में प्लगएबल एडाप्टर के रूप में वापस आएगा। अपने कॉन्फ़िग से इस फ़ील्ड को हटा दें।
    • संबंधित हटाना: i18nextResourcesDir (देखें doc/configuration चेंजलॉग)।
    • बड़े पैमाने पर गायब अनुवाद उत्पन्न करने के लिए नए ग्लोबल content.autoFill विकल्प को प्राथमिकता दें।
    • गायब अनुवादों पर PR को नियंत्रित करने के लिए npx intlayer content test का उपयोग करें।
    • विस्तृत डायग्नोस्टिक्स के लिए, log.mode = 'verbose' सेट करें।

    सुधार

    • Vue.js एकीकरण स्थिरता
    • Lynx एडाप्टर सुधार
    • विंडोज़ पर विज़ुअल एडिटर

    v6 से v7 में माइग्रेशन नोट्स

    अधिक जानकारी के लिए v6 से v7 में माइग्रेशन नोट्स देखें।


    उपयोगी लिंक