تخطَّ إلى المحتوى

يمكن استخدام هذا الإجراء لترجمة محتوى موقع وثائق Astro Starlight. يتطلب إعدادًا محددًا لـ Starlight كما هو مفصل أدناه.

  1. اتبع دليل Starlight لاستخدام إعداد الجذر للغة.

  2. لتمكين وضع Starlight، تحتاج إلى توفير إدخال starlight_dir في الإجراء.

    .github/workflows/ct.yml
    uses: pelikhan/action-continuous-translation@v0
    with:
    starlight_dir: ./docs
  3. إذا كنت قد قمت بتعيين خيار [Astro base] أيضًا (https://docs.astro.build/en/reference/configuration-reference/#base)، فستحتاج إلى توفير إدخال starlight_base أيضًا.

    .github/workflows/ct.yml
    uses: pelikhan/action-continuous-translation@v0
    with:
    starlight_dir: ./docs
    starlight_base: astro_base_option

بالإضافة إلى Markdown/MDX، ندعم بعض البيانات الوصفية الممكنة لـ frontmatter التي يدعمها Starlight:

ندعم أيضًا مدخلات frontmatter من Starlight Blog:

  • excerpt: ملخص منشور المدونة.

العنوان والشريط الجانبي

Section titled “العنوان والشريط الجانبي”

مدخلات title وsidebar في frontmatter لا يتم ترجمتها تلقائيًا بواسطة الإجراء. نوصي بنقل هذه المدخلات إلى ملف JSON واستيراده إلى ملف astro.config.mjs الخاص بك.

astro.config.mjs
// other imports
import { title } from "./resources.json" assert { type: "json" };
export default defineConfig({
integrations: [
starlight({
title,
}),
],
});

اتبع وثائق العنوان المحددة ووثائق الشريط الجانبي من Starlight للحصول على مزيد من التفاصيل.

إشعار محتوى الذكاء الاصطناعي

Section titled “إشعار محتوى الذكاء الاصطناعي”

يمكنك إعلام المستخدمين بأن الترجمة قد تم إنشاؤها بواسطة الذكاء الاصطناعي من خلال إضافة إشعار في العنوان. في الوقت الحالي، لا يدعم Astro Starlight ميزة مضمنة لإضافة الإشعارات لذلك يتطلب تجاوز بعض المكونات.

  • تجاوز مكوني PageTitle وHero في ملف astro.config.mjs الخاص بك:

    astro.config.mjs
    export default defineConfig({
    integrations: [
    starlight({
    components: {
    PageTitle: "./src/components/PageTitle.astro",
    Hero: "./src/components/Hero.astro",
    },
    }),
    ],
    });
  • أضف المكونات إلى دليل src/components الخاص بك من docs/src/components في هذا المستودع.

لا تتردد في تعديل المنطق في ملف AIGeneratedNotice.astro ليتناسب مع احتياجاتك.

إذا كنت تستخدم مدقق روابط Astro، تأكد من إيقاف خيار errorOnRelativeLinks في ملف astro.config.mjs الخاص بك نظرًا لأن الروابط المحلية مرتبطة باللغة الجذرية.

يمكنك أيضًا تفعيل خيار errorOnInconsistentLocale لضمان أن تكون جميع الروابط متوافقة مع اللغة الحالية.

astro.config.mjs
import starlightLinksValidator from "starlight-links-validator";
export default defineConfig({
integrations: [
starlight({
plugins: [
starlightLinksValidator({
errorOnRelativeLinks: false,
errorOnInconsistentLocale: true,
}),
],
}),
],
});

لوحة معلومات ترجمة Lunaria

Section titled “لوحة معلومات ترجمة Lunaria”

يمكنك استخدام لوحة معلومات ترجمة Lunaria لإنشاء لوحة معلومات حالة الترجمة لموقع Starlight الخاص بك.

يمكنك تجربة لوحة المعلومات عبر التنقل إلى رابط لوحة معلومات الترجمة في الشريط الجانبي لهذه الصفحة.