From 8c2b0f6d8e44e7e2dd6197ba3225204dba3dcc92 Mon Sep 17 00:00:00 2001 From: Bugo Date: Wed, 28 Aug 2024 14:56:13 +0500 Subject: i18n(ru): update some guides (#2262) --- docs/src/content/docs/ru/guides/components.mdx | 34 +++++- docs/src/content/docs/ru/guides/customization.mdx | 4 +- docs/src/content/docs/ru/guides/pages.mdx | 15 +-- docs/src/content/docs/ru/guides/sidebar.mdx | 135 ++++++++++++++++++---- docs/src/content/docs/ru/guides/site-search.mdx | 2 +- 5 files changed, 157 insertions(+), 33 deletions(-) diff --git a/docs/src/content/docs/ru/guides/components.mdx b/docs/src/content/docs/ru/guides/components.mdx index c317bba2..a26b5202 100644 --- a/docs/src/content/docs/ru/guides/components.mdx +++ b/docs/src/content/docs/ru/guides/components.mdx @@ -91,7 +91,7 @@ import { Tabs, TabItem } from '@astrojs/starlight/components'; Синхронизируйте несколько групп вкладок, добавив атрибут `syncKey`. -Все `` на странице с одинаковым значением `syncKey` будут отображать одну и ту же активную метку. Это позволяет вашему читателю выбрать один раз (например, операционную систему или менеджер пакетов) и увидеть, как его выбор отражается на всей странице. +Все `` с одинаковым значением `syncKey` будут отображать одну и ту же активную метку. Это позволит вашему читателю выбрать один раз (например, операционную систему или менеджер пакетов), и видеть, что их выбор сохраняется при переходе по страницам. Чтобы синхронизировать связанные вкладки, добавьте идентичное свойство `syncKey` к каждому компоненту `` и убедитесь, что все они используют одни и те же метки ``: @@ -228,6 +228,38 @@ import { LinkCard } from '@astrojs/starlight/components'; +### Кнопки-ссылки + +Используйте компонент `` для визуального выделения ссылок, призывающих к действию. +Кнопка-ссылка полезна для направления пользователей к наиболее релевантному или действующему контенту и часто используется на целевых страницах. + +`` требует обязательного атрибута [`href`](https://developer.mozilla.org/ru/docs/Web/HTML/Element/a#href) и по желанию принимает другие атрибуты ссылки, такие как `target`. + +Атрибут `icon` может содержать имя [одной из встроенных иконок Starlight](#все-иконки), чтобы включить иконку рядом с текстом. +Атрибут `iconPlacement` можно использовать для размещения иконки перед текстом, задав ему значение `start` (по умолчанию `end`). + +Настройте внешний вид кнопки-ссылки с помощью атрибута `variant`, который может быть установлен в значение `primary` (по умолчанию), `secondary` или `minimal`. + +```mdx +# src/content/docs/example.mdx + +import { LinkButton } from '@astrojs/starlight/components'; + +Первые шаги + + Похожие: Astro + +``` + +Вышеуказанный код сформирует следующий HTML: + +import { LinkButton } from '@astrojs/starlight/components'; + +Первые шаги + + Похожие: Astro + + ### Вставки Вставки полезны для отображения второстепенной информации рядом с основным содержанием страницы. diff --git a/docs/src/content/docs/ru/guides/customization.mdx b/docs/src/content/docs/ru/guides/customization.mdx index 80f6d923..30d2736b 100644 --- a/docs/src/content/docs/ru/guides/customization.mdx +++ b/docs/src/content/docs/ru/guides/customization.mdx @@ -107,6 +107,8 @@ export default defineConfig({ }); ``` +Узнайте, как [добавить ссылку на карту сайта в `robots.txt`](https://docs.astro.build/ru/guides/integrations-guide/sitemap/#sitemap-link-in-robotstxt) в документации Astro. + ## Макеты страниц По умолчанию страницы Starlight используют макет с боковой панелью и оглавлением, которое показывает заголовки текущей страницы. @@ -383,7 +385,7 @@ export default defineConfig({ 2. Установите пакет для выбранного вами шрифта. Вы можете найти имя пакета, нажав «Install» на странице шрифта Fontsource. - + diff --git a/docs/src/content/docs/ru/guides/pages.mdx b/docs/src/content/docs/ru/guides/pages.mdx index 54c642bc..79264584 100644 --- a/docs/src/content/docs/ru/guides/pages.mdx +++ b/docs/src/content/docs/ru/guides/pages.mdx @@ -109,26 +109,25 @@ import CustomComponent from './CustomComponent.astro'; ##### `sidebar` -**тип:** `SidebarEntry[]` +**тип:** [`SidebarItem[]`](/ru/reference/configuration/#sidebaritem) **по умолчанию:** боковая панель, созданная на основе [глобальной конфигурации `sidebar`](/ru/reference/configuration/#sidebar) Предоставление настраиваемой боковой панели навигации для этой страницы. Если этот параметр не установлен, на странице будет использоваться глобальная боковая панель по умолчанию. -Например, следующая страница заменяет боковую панель по умолчанию ссылкой на домашнюю страницу и группой ссылок на различные созвездия. -Текущая страница на боковой панели устанавливается с помощью свойства `isCurrent`, а к элементу ссылки добавлен дополнительный значок (`badge`). +Например, следующая страница переопределяет стандартную боковую панель со ссылкой на главную страницу и группой ссылок на другие пользовательские страницы. ```astro {3-13} ``` +Подробнее о доступных вариантах настройки боковой панели см. в руководстве [Боковая панель](/ru/guides/sidebar/). + ##### `hasSidebar` **тип:** `boolean` diff --git a/docs/src/content/docs/ru/guides/sidebar.mdx b/docs/src/content/docs/ru/guides/sidebar.mdx index 5ba6298a..7b248594 100644 --- a/docs/src/content/docs/ru/guides/sidebar.mdx +++ b/docs/src/content/docs/ru/guides/sidebar.mdx @@ -49,19 +49,73 @@ import SidebarPreview from '~/components/sidebar-preview.astro'; ## Добавление ссылок и групп ссылок -Чтобы настроить свои [ссылки](#ссылки) и [группы ссылок](#группы) (внутри сворачиваемого заголовка) в боковой панели, используйте свойство [`starlight.sidebar`](/ru/reference/configuration/#sidebar) в `astro.config.mjs`. +Чтобы настроить ссылки и группы ссылок на боковой панели (внутри сворачиваемого заголовка), используйте свойство [`starlight.sidebar`](/ru/reference/configuration/#sidebar) в `astro.config.mjs`. Комбинируя ссылки и группы, вы можете создавать разнообразные макеты боковой панели. -### Ссылки +### Внутренние ссылки -Добавьте ссылку на внутреннюю или внешнюю страницу, используя объект со свойствами `label` и `link`. +Добавьте ссылку на страницу в `src/content/docs/`, используя объект со свойством `slug`. +Заголовок связанной страницы будет использоваться в качестве метки по умолчанию. + +Например, со следующей конфигурацией: + +```js "slug:" +starlight({ + sidebar: [ + { slug: 'constellations/andromeda' }, + { slug: 'constellations/orion' }, + ], +}); +``` + +И следующей файловой структурой: + + + +- src/ + - content/ + - docs/ + - constellations/ + - andromeda.md + - orion.md + + + +Будет создана следующая боковая панель: + + + +Чтобы переопределить значения, полученные из метаданных связанной страницы, вы можете добавить свойства `label`, [`translations`](#интернационализация) и [`attrs`](#пользовательские-html-атрибуты). + +См. [Настройка сгенерированных ссылок](#настройка-сгенерированных-ссылок-через-метаданные) для получения более подробной информации об управлении внешним видом боковой панели из метаданных страницы. + +#### Сокращенное обозначение внутренних ссылок + +Внутренние ссылки также можно определить, указав только строку для обозначения страницы в качестве сокращения. + +Например, следующая конфигурация эквивалентна конфигурации выше, в которой используется `slug`: + +```js "slug:" +starlight({ + sidebar: ['constellations/andromeda', 'constellations/orion'], +}); +``` + +### Другие ссылки + +Добавьте ссылку на внешнюю страницу или страницу, не являющуюся документацией, используя объект со свойствами `label` и `link`. ```js "label:" "link:" starlight({ sidebar: [ - // Ссылка на страницу луны Ганимед. - { label: 'Ганимед', link: '/moons/ganymede/' }, + // Ссылка на страницу, не связанную с документацией, на этом сайте. + { label: 'Meteor Store', link: '/shop/' }, // Внешняя ссылка на веб-сайт NASA. { label: 'NASA', link: 'https://www.nasa.gov/' }, ], @@ -72,7 +126,7 @@ starlight({ @@ -93,15 +147,15 @@ starlight({ { label: 'Созвездия', items: [ - { label: 'Карина', link: '/constellations/carina/' }, - { label: 'Центавр', link: '/constellations/centaurus/' }, + 'constellations/carina', + 'constellations/centaurus', // Вложенная группа ссылок для сезонных созвездий. { label: 'Сезонные', items: [ - { label: 'Андромеда', link: '/constellations/andromeda/' }, - { label: 'Орион', link: '/constellations/orion/' }, - { label: 'Малая Медведица', link: '/constellations/ursa-minor/' }, + 'constellations/andromeda', + 'constellations/orion', + 'constellations/ursa-minor', ], }, ], @@ -186,7 +240,7 @@ starlight({ ]} /> -#### Настройка сгенерированных ссылок через метаданные +## Настройка сгенерированных ссылок через метаданные Используйте [поле `sidebar`](/ru/reference/frontmatter/#sidebar) в метаданных страниц для настройки автоматически генерируемых ссылок. @@ -228,14 +282,14 @@ sidebar: /> :::note -Конфигурация `sidebar` в метаданных используется только для автоматически генерируемых ссылок и будет проигнорирована для вручную определённых ссылок. +Параметр `sidebar` в метаданных используется только для ссылок в автогенерируемых группах и ссылок на документы, заданных с помощью свойства `slug`. Он не применяется к ссылкам, заданным с помощью свойства `link`. ::: ## Значки Ссылки также могут включать свойство `badge` для отображения значка рядом с текстом ссылки. -```js {10,17} +```js {9,16} starlight({ sidebar: [ { @@ -243,8 +297,7 @@ starlight({ items: [ // Ссылка со значком «Сверхгигант». { - label: 'Персей', - link: '/stars/persei/', + slug: 'stars/persei', badge: 'Сверхгигант', }, ], @@ -303,7 +356,7 @@ starlight({ Кроме того, можно создать собственный стиль значка, задав свойству `class` имя класса CSS. -```js {10} +```js {9} starlight({ sidebar: [ { @@ -311,8 +364,7 @@ starlight({ items: [ // Ссылка с жёлтым значком «Заглушка» { - label: 'Сириус', - link: '/stars/sirius/', + slug: 'stars/sirius', badge: { text: 'Заглушка', variant: 'caution' }, }, ], @@ -401,14 +453,14 @@ starlight({ translations: { 'pt-BR': 'Andrômeda', }, - link: '/constellations/andromeda/', + slug: 'constellations/andromeda', }, { label: 'Скорпион', translations: { 'pt-BR': 'Escorpião', }, - link: '/constellations/scorpius/', + slug: 'constellations/scorpius', }, ], }, @@ -430,6 +482,44 @@ starlight({ ]} /> +### Интернационализация с внутренними ссылками + +[Внутренние ссылки](#внутренние-ссылки) по умолчанию будут автоматически использовать переведённые заголовки страниц из метаданных контента: + +```js {9-10} +starlight({ + sidebar: [ + { + label: 'Созвездия', + translations: { + 'pt-BR': 'Constelações', + }, + items: [ + { slug: 'constellations/andromeda' }, + { slug: 'constellations/scorpius' }, + ], + }, + ], +}); +``` + +При просмотре документации на бразильском португальском языке появится следующая боковая панель: + + + +На многоязычных сайтах значение `slug` не включает языковую часть URL. +Например, если у вас есть страницы `en/intro` и `pt-br/intro`, при настройке боковой панели в качестве slug будет `intro`. + ## Сворачиваемые группы Группы ссылок могут быть свёрнуты по умолчанию, если установить свойство `collapsed` в `true`. @@ -442,8 +532,7 @@ starlight({ // Сворачивание группы по умолчанию collapsed: true, items: [ - { label: 'Андромеда', link: '/constellations/andromeda/' }, - { label: 'Орион', link: '/constellations/orion/' }, + items: ['constellations/andromeda', 'constellations/orion'], ], }, ], diff --git a/docs/src/content/docs/ru/guides/site-search.mdx b/docs/src/content/docs/ru/guides/site-search.mdx index 0769e6a9..ee59a477 100644 --- a/docs/src/content/docs/ru/guides/site-search.mdx +++ b/docs/src/content/docs/ru/guides/site-search.mdx @@ -52,7 +52,7 @@ title: Частично проиндексированная страница 1. Установите `@astrojs/starlight-docsearch`: - + -- cgit