Starlight

الترجمة بالذكاء الاصطناعي لـ Starlight باستخدام Lingo.dev CLI

ما هو Starlight؟

Starlight هو قالب توثيق مبني على إطار عمل Astro. يوفر ميزات مدمجة للتنقل في الموقع والبحث والترجمة وتحسين محركات البحث لإنشاء مواقع توثيق جميلة وسهلة الوصول.

ما هو Lingo.dev CLI؟

Lingo.dev هي منصة ترجمة مدعومة بالذكاء الاصطناعي. يقرأ Lingo.dev CLI الملفات المصدرية، ويرسل المحتوى القابل للترجمة إلى نماذج اللغة الكبيرة، ويكتب الملفات المترجمة مرة أخرى إلى مشروعك.

حول هذا الدليل

يشرح هذا الدليل كيفية إعداد Lingo.dev CLI في موقع توثيق Starlight. ستتعلم كيفية إنشاء مشروع باستخدام Starlight، وتكوين خط أنابيب الترجمة، وعرض النتائج.

الخطوة 1. إعداد مشروع Starlight

  1. إنشاء تطبيق Starlight جديد:

    npm create astro@latest -- --template starlight
    
  2. الانتقال إلى دليل المشروع:

    cd <your-starlight-project>
    

الخطوة 2. إنشاء المحتوى المصدري

  1. إنشاء دليل لتخزين التوثيق باللغة المصدرية:

    mkdir -p src/content/docs/en
    
  2. إنشاء ملف يحتوي على بعض محتوى التوثيق (على سبيل المثال، src/content/docs/en/index.mdx):

    ---
    title: "Welcome"
    description: "Getting started with our documentation"
    ---
    
    ## Introduction
    
    This documentation is automatically translated by Lingo.dev.
    
    ## Features
    
    Our product includes powerful capabilities for modern development.
    

الخطوة 3. تكوين CLI

في جذر المشروع، قم بإنشاء ملف i18n.json:

{
  "$schema": "https://lingo.dev/schema/i18n.json",
  "version": "1.10",
  "locale": {
    "source": "en",
    "targets": ["es"]
  },
  "buckets": {
    "mdx": {
      "include": [
        "src/content/docs/[locale]/*.mdx",
        "src/content/docs/[locale]/*/*.mdx"
      ]
    }
  }
}

يحدد هذا الملف:

  • الملفات التي يجب على Lingo.dev CLI ترجمتها
  • اللغات التي سيتم الترجمة بينها

في هذه الحالة، يترجم التكوين ملفات MDX من الإنجليزية إلى الإسبانية.

من المهم ملاحظة أن:

  • [locale] هو عنصر نائب يتم استبداله في وقت التشغيل. يضمن قراءة المحتوى من موقع واحد (مثل src/content/docs/en/index.mdx) وكتابته إلى موقع مختلف (مثل src/content/docs/es/index.mdx).
  • لا يدعم Lingo.dev CLI أنماط glob العودية (مثل **/*.mdx). ستحتاج إلى إنشاء أنماط include إضافية لترجمة الملفات الموجودة داخل الدلائل المتداخلة.

لمعرفة المزيد، راجع تكوين i18n.json.

الخطوة 4. ترجمة المحتوى

  1. سجل للحصول على حساب Lingo.dev.

  2. سجل الدخول إلى Lingo.dev عبر CLI:

    npx lingo.dev@latest login
    
  3. قم بتشغيل خط أنابيب الترجمة:

    npx lingo.dev@latest run
    

    سينشئ CLI دليل src/content/docs/es/ لتخزين المحتوى المترجم وملف i18n.lock لتتبع ما تمت ترجمته (لمنع إعادة الترجمة غير الضرورية).

الخطوة 5. استخدام الترجمات

  1. في ملف astro.config.mjs، قم بتكوين اللغات المدعومة:

    import { defineConfig } from "astro/config";
    import starlight from "@astrojs/starlight";
    
    export default defineConfig({
      integrations: [
        starlight({
          title: "My Docs",
          defaultLocale: "en",
          locales: {
            en: {
              label: "English",
              lang: "en",
            },
            es: {
              label: "Español",
              lang: "es",
            },
          },
        }),
      ],
    });
    
  2. ابدأ خادم التطوير:

    npm run dev
    
  3. انتقل إلى عناوين URL التالية: