From 3a53884e9aa03fec069ae911a832e36697d855c6 Mon Sep 17 00:00:00 2001 From: Can Tosun Date: Thu, 6 Aug 2026 21:24:18 +0200 Subject: [PATCH 1/2] Added translation banner --- astro.config.mjs | 3 + src/components/TranslationBanner.astro | 93 +++++++++++++++++++ .../ru/configuration/automount_with_fstab.mdx | 5 +- .../boot_manager_configuration.mdx | 5 +- .../docs/ru/configuration/btrfs_snapshots.mdx | 5 +- .../desktop_environments/hyprland.mdx | 5 +- .../docs/ru/configuration/dual_gpu.mdx | 5 +- ...hardware_acceleration_in_google_chrome.mdx | 5 +- src/content/docs/ru/configuration/gaming.mdx | 5 +- .../configuration/general_system_tweaks.mdx | 5 +- .../ru/configuration/post_install_setup.mdx | 5 +- .../docs/ru/configuration/sched-ext.mdx | 5 +- .../ru/configuration/secure_boot_setup.mdx | 5 +- src/content/docs/ru/features/cachy_chroot.mdx | 5 +- .../docs/ru/features/cachyos_settings.mdx | 5 +- src/content/docs/ru/features/kernel.mdx | 5 +- .../docs/ru/features/optimized_repos.mdx | 5 +- .../ru/installation/desktop_environments.mdx | 5 +- .../docs/ru/installation/filesystem.md | 5 +- .../ru/installation/installation_on_root.mdx | 5 +- src/content/docs/ru/policy/code_of_conduct.md | 5 +- .../docs/ru/policy/repository_policy.md | 5 +- src/content/docs/ru/support/donation.md | 5 +- 23 files changed, 117 insertions(+), 84 deletions(-) create mode 100644 src/components/TranslationBanner.astro diff --git a/astro.config.mjs b/astro.config.mjs index 53f3a4d22..f9a5ca538 100644 --- a/astro.config.mjs +++ b/astro.config.mjs @@ -55,6 +55,9 @@ export default defineConfig({ logo: { src: '/src/assets/logo.svg', }, + components: { + Banner: './src/components/TranslationBanner.astro', + }, editLink: { baseUrl: 'https://github.com/cachyos/wiki/edit/next/', }, diff --git a/src/components/TranslationBanner.astro b/src/components/TranslationBanner.astro new file mode 100644 index 000000000..97a143b76 --- /dev/null +++ b/src/components/TranslationBanner.astro @@ -0,0 +1,93 @@ +--- +const locales = ['cs', 'de', 'el', 'es', 'fr', 'ja', 'pl', 'ru', 'sk', 'pt', 'bg']; +const rawDocs = import.meta.glob('/src/content/docs/(cs|de|el|es|fr|ja|pl|ru|sk|pt|bg)/**/*.{md,mdx}', { query: '?raw', import: 'default', eager: true }); + +const segments = Astro.url.pathname.split('/').filter(Boolean); +const locale = segments[0]; +const isTranslated = locales.includes(locale); + +if (!isTranslated) return null; + +const slug = segments.slice(1).join('/') || 'index'; +const raw = rawDocs[`/src/content/docs/${locale}/${slug}.mdx`] ?? rawDocs[`/src/content/docs/${locale}/${slug}.md`]; +let ai = false; +if (raw) { + const fm = raw.match(/^---\n([\s\S]*?)\n---/); + if (fm?.[1].includes('ai_translated')) ai = true; +} +--- + +
+
+ Translation notice +

This is a community-maintained translation. The English version is the authoritative source.

+ {ai && ( +

This page was translated using generative AI and may not yet have been reviewed by a native speaker.

+ )} +

Found an error? Please open an issue or submit a correction. Community contributions help us keep translations accurate and up to date.

+
+ +
+ + + + \ No newline at end of file diff --git a/src/content/docs/ru/configuration/automount_with_fstab.mdx b/src/content/docs/ru/configuration/automount_with_fstab.mdx index a32c01b90..6ee392f40 100644 --- a/src/content/docs/ru/configuration/automount_with_fstab.mdx +++ b/src/content/docs/ru/configuration/automount_with_fstab.mdx @@ -1,14 +1,11 @@ --- title: Автоматическое монтирование дополнительных дисков при загрузке через fstab description: Монтирование дополнительных статических дисков при загрузке с использованием файлов монтирования systemd или файла /etc/fstab +ai_translated: true --- import { Tabs, TabItem, Steps } from '@astrojs/starlight/components'; -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - Это руководство описывает основы использования как файлов монтирования systemd, так и файла fstab, расположенного в /etc/, для монтирования статических дисков во время загрузки. Здесь кратко объясняется, как найти UUID раздела или диска, что делают некоторые опции, а также приводятся ссылки для дальнейшего чтения, если предоставленной информации окажется недостаточно. ## Предварительные требования diff --git a/src/content/docs/ru/configuration/boot_manager_configuration.mdx b/src/content/docs/ru/configuration/boot_manager_configuration.mdx index a09ec8a0a..f1268870d 100644 --- a/src/content/docs/ru/configuration/boot_manager_configuration.mdx +++ b/src/content/docs/ru/configuration/boot_manager_configuration.mdx @@ -1,12 +1,9 @@ --- title: Конфигурация Менеджера Загрузки description: Настройте параметры менеджера загрузки и передайте параметры ядру через командную строку +ai_translated: true --- -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - ## systemd-boot systemd-boot использует два типа конфигурационных файлов: один для самого systemd-boot в `/boot/loader/loader.conf` и по одному для каждой diff --git a/src/content/docs/ru/configuration/btrfs_snapshots.mdx b/src/content/docs/ru/configuration/btrfs_snapshots.mdx index 77cfb9359..a83ca99a0 100644 --- a/src/content/docs/ru/configuration/btrfs_snapshots.mdx +++ b/src/content/docs/ru/configuration/btrfs_snapshots.mdx @@ -4,16 +4,13 @@ description: Управление снимками Btrfs в CachyOS tableOfContents: minHeadingLevel: 1 maxHeadingLevel: 5 +ai_translated: true --- import { Steps } from '@astrojs/starlight/components'; import ImageComponent from '~/components/image-component.astro'; import MultipleImageComponent from '~/components/multiple-images-component.astro'; -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - ## Введение :::caution diff --git a/src/content/docs/ru/configuration/desktop_environments/hyprland.mdx b/src/content/docs/ru/configuration/desktop_environments/hyprland.mdx index 2bdb16bae..cff003cec 100644 --- a/src/content/docs/ru/configuration/desktop_environments/hyprland.mdx +++ b/src/content/docs/ru/configuration/desktop_environments/hyprland.mdx @@ -1,12 +1,9 @@ --- title: Настройка Hyprland после установки и комбинации клавиш description: Распространённые задачи после установки и обзор комбинаций клавиш +ai_translated: true --- -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - import { Kbd } from 'starlight-kbd/components' import ImageComponent from '~/components/image-component.astro'; import { Aside } from '@astrojs/starlight/components'; diff --git a/src/content/docs/ru/configuration/dual_gpu.mdx b/src/content/docs/ru/configuration/dual_gpu.mdx index c3dea6041..3707c1b52 100644 --- a/src/content/docs/ru/configuration/dual_gpu.mdx +++ b/src/content/docs/ru/configuration/dual_gpu.mdx @@ -1,13 +1,10 @@ --- title: Руководство по настройке двух видеокарт +ai_translated: true --- import ImageComponent from '~/components/image-component.astro'; -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - ## Что такое гибридная графика? Гибридная графика — это аппаратная конфигурация, в которой две видеокарты diff --git a/src/content/docs/ru/configuration/enabling_hardware_acceleration_in_google_chrome.mdx b/src/content/docs/ru/configuration/enabling_hardware_acceleration_in_google_chrome.mdx index 63983f0f1..004cd14a8 100644 --- a/src/content/docs/ru/configuration/enabling_hardware_acceleration_in_google_chrome.mdx +++ b/src/content/docs/ru/configuration/enabling_hardware_acceleration_in_google_chrome.mdx @@ -1,14 +1,11 @@ --- title: Аппаратное ускорение в браузерах на базе Chromium description: Настройте аппаратное ускорение для декодирования/кодирования видео в браузерах на базе Chromium в CachyOS. Включает настройку для ГП AMD и шаблон для других ГП/браузеров. +ai_translated: true --- import { Tabs, TabItem, Steps } from '@astrojs/starlight/components'; -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - Это руководство описывает включение аппаратного ускорения в браузерах на базе Chromium в CachyOS. Это переносит задачи обработки видео/графики на ваш ГП, улучшая производительность. ## Предварительные требования diff --git a/src/content/docs/ru/configuration/gaming.mdx b/src/content/docs/ru/configuration/gaming.mdx index db5b84d9b..e395b8136 100644 --- a/src/content/docs/ru/configuration/gaming.mdx +++ b/src/content/docs/ru/configuration/gaming.mdx @@ -4,16 +4,13 @@ description: 'Охватывает установку необходимых п tableOfContents: minHeadingLevel: 1 maxHeadingLevel: 4 +ai_translated: true --- import ImageComponent from '~/components/image-component.astro'; import MultipleImageComponent from '~/components/multiple-images-component.astro'; import { Tabs, TabItem, Steps, LinkButton, Icon } from '@astrojs/starlight/components'; -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - Добро пожаловать в руководство по играм в CachyOS! Оно проведёт вас через всё, что вам нужно знать для настройки системы для игр. *Прежде всего, поймите, что добиться двузначного прироста FPS не всегда возможно. Иногда оптимизации могут привести к незначительным улучшениям или вообще не дать эффекта, в зависимости от игры и конфигурации оборудования.* diff --git a/src/content/docs/ru/configuration/general_system_tweaks.mdx b/src/content/docs/ru/configuration/general_system_tweaks.mdx index afa46f241..0b1b84b68 100644 --- a/src/content/docs/ru/configuration/general_system_tweaks.mdx +++ b/src/content/docs/ru/configuration/general_system_tweaks.mdx @@ -4,15 +4,12 @@ description: Что можно настроить после установки tableOfContents: minHeadingLevel: 1 maxHeadingLevel: 4 +ai_translated: true --- import { Tabs, TabItem, Steps, LinkButton, Icon } from '@astrojs/starlight/components'; import ImageComponent from '~/components/image-component.astro'; -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - ## Настройки производительности AMD ### Драйвер AMD P-State diff --git a/src/content/docs/ru/configuration/post_install_setup.mdx b/src/content/docs/ru/configuration/post_install_setup.mdx index 65f7f6950..430383dcd 100644 --- a/src/content/docs/ru/configuration/post_install_setup.mdx +++ b/src/content/docs/ru/configuration/post_install_setup.mdx @@ -4,15 +4,12 @@ description: Шаги по настройке после установки Cach tableOfContents: minHeadingLevel: 1 maxHeadingLevel: 4 +ai_translated: true --- import { Tabs, TabItem, Steps, LinkButton, Icon } from '@astrojs/starlight/components'; import ImageComponent from '~/components/image-component.astro'; -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - ## Рекомендуемые шаги после установки ### Обновление системы diff --git a/src/content/docs/ru/configuration/sched-ext.mdx b/src/content/docs/ru/configuration/sched-ext.mdx index cf8b42932..c7eef45ae 100644 --- a/src/content/docs/ru/configuration/sched-ext.mdx +++ b/src/content/docs/ru/configuration/sched-ext.mdx @@ -4,15 +4,12 @@ description: Руководство по использованию фреймв tableOfContents: minHeadingLevel: 1 maxHeadingLevel: 5 +ai_translated: true --- import { Steps, Tabs, TabItem, Icon } from '@astrojs/starlight/components'; import ImageComponent from '~/components/image-component.astro'; -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - Extensible Scheduler Class (более известный как `sched-ext`) — это функция ядра Linux, которая позволяет реализовывать планировщики потоков ядра на BPF (Berkeley Packet Filter) и динамически их загружать. По сути, это позволяет конечным пользователям изменять свои планировщики в пространстве пользователя без необходимости собирать новое ядро только для того, чтобы получить другой планировщик. diff --git a/src/content/docs/ru/configuration/secure_boot_setup.mdx b/src/content/docs/ru/configuration/secure_boot_setup.mdx index bdaa5b5a6..2dc8d926d 100644 --- a/src/content/docs/ru/configuration/secure_boot_setup.mdx +++ b/src/content/docs/ru/configuration/secure_boot_setup.mdx @@ -4,15 +4,12 @@ description: Настройте безопасную загрузку с пом tableOfContents: minHeadingLevel: 1 maxHeadingLevel: 4 +ai_translated: true --- import ImageComponent from '~/components/image-component.astro'; import { Tabs, TabItem, Steps } from '@astrojs/starlight/components'; -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - ## Предварительная настройка ### Загрузчик GRUB diff --git a/src/content/docs/ru/features/cachy_chroot.mdx b/src/content/docs/ru/features/cachy_chroot.mdx index 10b618dc1..054c306a1 100644 --- a/src/content/docs/ru/features/cachy_chroot.mdx +++ b/src/content/docs/ru/features/cachy_chroot.mdx @@ -4,14 +4,11 @@ description: Вспомогательный инструмент для упро tableOfContents: minHeadingLevel: 1 maxHeadingLevel: 4 +ai_translated: true --- import {Tabs, TabItem, Steps } from '@astrojs/starlight/components'; -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - [cachy-chroot](https://github.com/CachyOS/cachy-chroot) — это простая вспомогательная программа для облегчения процесса chroot в существующую установку CachyOS или системы на базе Arch. Она выводит список всех обнаруженных на машине разделов, а также поддерживает вывод списка подтомов BTRFS. И последнее, но не менее важное: `cachy-chroot` также поддерживает зашифрованные системы через LUKS. Она сопоставит каждую запись `fstab` с соответствующей записью `crypttab` diff --git a/src/content/docs/ru/features/cachyos_settings.mdx b/src/content/docs/ru/features/cachyos_settings.mdx index 94a5fe8d3..a5ff785c2 100644 --- a/src/content/docs/ru/features/cachyos_settings.mdx +++ b/src/content/docs/ru/features/cachyos_settings.mdx @@ -1,12 +1,9 @@ --- title: Настройки CachyOS +ai_translated: true --- import { Tabs, TabItem, Steps } from '@astrojs/starlight/components'; -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - Помимо наших оптимизированных ядер и репозиториев, мы также предоставляем настройки, которые дополнительно улучшают работу рабочего стола, а также некоторые вспомогательные скрипты для улучшения качества жизни (QoL). Все эти конфигурации и скрипты находятся в пакете `cachyos-settings`. diff --git a/src/content/docs/ru/features/kernel.mdx b/src/content/docs/ru/features/kernel.mdx index 0e35eefa3..5fa4cdc79 100644 --- a/src/content/docs/ru/features/kernel.mdx +++ b/src/content/docs/ru/features/kernel.mdx @@ -4,12 +4,9 @@ description: Возможности и изменения в ядре CachyOS tableOfContents: minHeadingLevel: 1 maxHeadingLevel: 4 +ai_translated: true --- -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - Ядро CachyOS — это кастомизированное ядро, использующее улучшения, конфигурации и патчи из апстрима. ## Возможности diff --git a/src/content/docs/ru/features/optimized_repos.mdx b/src/content/docs/ru/features/optimized_repos.mdx index 0971da327..91f57f12c 100644 --- a/src/content/docs/ru/features/optimized_repos.mdx +++ b/src/content/docs/ru/features/optimized_repos.mdx @@ -4,15 +4,12 @@ description: Информация о наших оптимизированных tableOfContents: minHeadingLevel: 1 maxHeadingLevel: 4 +ai_translated: true --- import { Tabs, TabItem, Steps } from '@astrojs/starlight/components'; import ImageComponent from '~/components/image-component.astro'; -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - Для предоставления оптимизированного по производительности дистрибутива, CachyOS пересобирает пакеты Arch Linux специально для архитектур `x86-64-v3`, `x86-64-v4` и `Zen4+`. - **x86-64-v3:** Прирост производительности 5%-20% по сравнению с x86-64. diff --git a/src/content/docs/ru/installation/desktop_environments.mdx b/src/content/docs/ru/installation/desktop_environments.mdx index a80a944c2..d35b99f64 100644 --- a/src/content/docs/ru/installation/desktop_environments.mdx +++ b/src/content/docs/ru/installation/desktop_environments.mdx @@ -1,15 +1,12 @@ --- title: Рабочие окружения description: Рабочие окружения, предоставляемые CachyOS +ai_translated: true --- import ImageComponent from '~/components/image-component.astro'; import MultipleImageComponent from '~/components/multiple-images-component.astro'; -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - CachyOS предлагает на выбор несколько рабочих окружений. Этот выбор основан на личных предпочтениях. Выберите то, которое вам нравится больше всего. diff --git a/src/content/docs/ru/installation/filesystem.md b/src/content/docs/ru/installation/filesystem.md index eb76c2408..2e3194da7 100644 --- a/src/content/docs/ru/installation/filesystem.md +++ b/src/content/docs/ru/installation/filesystem.md @@ -1,12 +1,9 @@ --- title: Файловые системы description: Описание и рекомендации по доступным файловым системам. (ext4, f2fs, btrfs, xfs, zfs) +ai_translated: true --- -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - CachyOS предлагает 5 различных файловых систем, чтобы позволить пользователю выбрать ту, что наилучшим образом соответствует его потребностям. Далее будут рассмотрены преимущества, недостатки и рекомендации для каждой файловой системы. Все необходимые требования/утилиты для каждой файловой системы уже предустановлены в CachyOS. :::note diff --git a/src/content/docs/ru/installation/installation_on_root.mdx b/src/content/docs/ru/installation/installation_on_root.mdx index 6c64bd396..ec2266559 100644 --- a/src/content/docs/ru/installation/installation_on_root.mdx +++ b/src/content/docs/ru/installation/installation_on_root.mdx @@ -6,14 +6,11 @@ sidebar: tableOfContents: minHeadingLevel: 1 maxHeadingLevel: 4 +ai_translated: true --- import { Steps, Tabs, TabItem } from '@astrojs/starlight/components'; -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - ## Перед началом :::note diff --git a/src/content/docs/ru/policy/code_of_conduct.md b/src/content/docs/ru/policy/code_of_conduct.md index fba6ba05b..d7268ac25 100644 --- a/src/content/docs/ru/policy/code_of_conduct.md +++ b/src/content/docs/ru/policy/code_of_conduct.md @@ -1,11 +1,8 @@ --- title: Кодекс поведения +ai_translated: true --- -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - # Кодекс Поведения участника ## Наши обязательства diff --git a/src/content/docs/ru/policy/repository_policy.md b/src/content/docs/ru/policy/repository_policy.md index 2a810ff82..e45adcaeb 100644 --- a/src/content/docs/ru/policy/repository_policy.md +++ b/src/content/docs/ru/policy/repository_policy.md @@ -1,11 +1,8 @@ --- title: Политика использования репозитория +ai_translated: true --- -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - Политика использования репозитория CachyOS ## 1. Введение diff --git a/src/content/docs/ru/support/donation.md b/src/content/docs/ru/support/donation.md index 9548816c1..9b9ea26a6 100644 --- a/src/content/docs/ru/support/donation.md +++ b/src/content/docs/ru/support/donation.md @@ -1,12 +1,9 @@ --- title: Пожертвование description: Способы нас поддержать +ai_translated: true --- -:::note -Эта страница была переведена с помощью генеративного искусственного интеллекта и предоставляется в целях доступности. Перевод может быть неполным, устаревшим или неточным. Английская версия является авторитетным источником и должна всегда использоваться, когда важна точность. -::: - Если вы хотите поддержать нашу работу, вы можете сделать пожертвование и помочь оплатить наши сборочные серверы. Каждый, кто сделал пожертвование, получает ранг Донатора на нашем Discord-сервере. From 09cca946822b0edca369ea56b8cde6bd7eb9e091 Mon Sep 17 00:00:00 2001 From: Can Tosun Date: Sat, 8 Aug 2026 12:17:47 +0200 Subject: [PATCH 2/2] Unjankified the code --- src/components/TranslationBanner.astro | 51 +++++++++++--------------- src/content.config.ts | 9 ++++- 2 files changed, 30 insertions(+), 30 deletions(-) diff --git a/src/components/TranslationBanner.astro b/src/components/TranslationBanner.astro index 97a143b76..8c75c877b 100644 --- a/src/components/TranslationBanner.astro +++ b/src/components/TranslationBanner.astro @@ -1,27 +1,22 @@ --- -const locales = ['cs', 'de', 'el', 'es', 'fr', 'ja', 'pl', 'ru', 'sk', 'pt', 'bg']; -const rawDocs = import.meta.glob('/src/content/docs/(cs|de|el|es|fr|ja|pl|ru|sk|pt|bg)/**/*.{md,mdx}', { query: '?raw', import: 'default', eager: true }); +import DefaultBanner from '@astrojs/starlight/components/Banner.astro'; -const segments = Astro.url.pathname.split('/').filter(Boolean); -const locale = segments[0]; -const isTranslated = locales.includes(locale); +const { locale, entry, isFallback } = Astro.locals.starlightRoute; -if (!isTranslated) return null; +if (!locale || isFallback) return null; -const slug = segments.slice(1).join('/') || 'index'; -const raw = rawDocs[`/src/content/docs/${locale}/${slug}.mdx`] ?? rawDocs[`/src/content/docs/${locale}/${slug}.md`]; -let ai = false; -if (raw) { - const fm = raw.match(/^---\n([\s\S]*?)\n---/); - if (fm?.[1].includes('ai_translated')) ai = true; -} +const aiTranslated = entry.data.ai_translated ?? false; + +const hasOutdatedBanner = !!entry.data.banner; --- -
+{hasOutdatedBanner && } + +