Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

i18n(ru): update some translations #2849

Merged
merged 11 commits into from
Feb 3, 2025
2 changes: 1 addition & 1 deletion docs/src/content/docs/ru/components/icons.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ import { Icon } from '@astrojs/starlight/components';
### `name`

**обязательный**
**тип:** `string`
**тип:** [`StarlightIcon`](/ru/reference/icons/#тип-starlighticon)

Имя отображаемой иконки, из набора [встроенных иконок Starlight](/ru/reference/icons/#все-иконки).

Expand Down
6 changes: 3 additions & 3 deletions docs/src/content/docs/ru/components/using-components.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -81,14 +81,14 @@ Starlight применяет стандартную стилистику к со
Используйте тип [`ComponentProps`](https://docs.astro.build/ru/guides/typescript/#%D1%82%D0%B8%D0%BF-componentprops) из `astro/types` для ссылки на `Props`, принимаемые компонентом, даже если они не экспортируются самим компонентом.
Это может быть полезно при обёртке или расширении существующего компонента.

В следующем примере используется `ComponentProps` для получения типа параметров, принимаемых встроенным компонентом Starlight `Icon`:
В следующем примере используется `ComponentProps` для получения типа параметров, принимаемых встроенным компонентом Starlight `Badge`:

```astro
---
// src/components/Example.astro
import type { ComponentProps } from 'astro/types';
import { Icon } from '@astrojs/starlight/icon';
import { Badge } from '@astrojs/starlight/components';

type IconProps = ComponentProps<typeof Icon>;
type BadgeProps = ComponentProps<typeof Badge>;
---
```
20 changes: 10 additions & 10 deletions docs/src/content/docs/ru/guides/authoring-content.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -220,24 +220,24 @@ var fun = function lang(l) {

### Возможности Expressive Code

Starlight использует [Expressive Code](https://github.com/expressive-code/expressive-code/tree/main/packages/astro-expressive-code) для расширения возможностей форматирования блоков кода.
Starlight использует [Expressive Code](https://expressive-code.com/) для расширения возможностей форматирования блоков кода.
Текстовые маркеры и плагины оконных рамок Expressive Code включены по умолчанию.
Рендеринг блоков кода можно настроить с помощью [параметра конфигурации `expressiveCode`](/ru/reference/configuration/#expressivecode) Starlight.

#### Текстовые маркеры

Вы можете выделить определённые строки или части блоков кода с помощью [текстовых маркеров Expressive Code](https://github.com/expressive-code/expressive-code/blob/main/packages/%40expressive-code/plugin-text-markers/README.md#usage-in-markdown--mdx-documents) в первой строке вашего блока кода.
Вы можете выделить определённые строки или части блоков кода с помощью [текстовых маркеров Expressive Code](https://expressive-code.com/key-features/text-markers/) в первой строке вашего блока кода.
Используйте фигурные скобки (`{ }`), чтобы выделить целые строки, и кавычки, чтобы выделить строки текста.

Существует три стиля выделения: нейтральный для привлечения внимания к коду, зелёный для обозначения вставленного кода и красный для обозначения удалённого кода.
И текст, и целые строки можно пометить с помощью маркера по умолчанию или в сочетании с `ins=` и `del=` для получения желаемого выделения.

Expressive Code предоставляет несколько вариантов настройки внешнего вида примеров кода.
Многие из них можно комбинировать для получения наглядных примеров кода.
Ознакомьтесь с [документацией Expressive Code](https://github.com/expressive-code/expressive-code/blob/main/packages/%40expressive-code/plugin-text-markers/README.md), чтобы узнать о расширенных возможностях. доступный.
Ознакомьтесь с [документацией Expressive Code](https://expressive-code.com/key-features/text-markers/#configuration), чтобы узнать о расширенных возможностях. доступный.
Некоторые из наиболее распространённых примеров показаны ниже:

- [Пометка целых строк и диапазонов строк с помощью маркера `{ }`](https://github.com/expressive-code/expressive-code/blob/main/packages/%40expressive-code/plugin-text-markers/README.md#marking-entire-lines--line-ranges):
- [Пометка целых строк и диапазонов строк с помощью маркера `{ }`](https://expressive-code.com/key-features/text-markers/#marking-full-lines--line-ranges):

```js {2-3}
function demo() {
Expand All @@ -255,7 +255,7 @@ Expressive Code предоставляет несколько вариантов
```
````

- [Пометка выделенного текста с помощью маркера `" "` или регулярных выражений](https://github.com/expressive-code/expressive-code/blob/main/packages/%40expressive-code/plugin-text-markers/README.md#marking-individual-text-inside-lines):
- [Пометка выделенного текста с помощью маркера `" "` или регулярных выражений](https://expressive-code.com/key-features/text-markers/#marking-individual-text-inside-lines):

```js "Отдельные термины" /даже.*выражения/
// Отдельные термины также могут быть выделены
Expand All @@ -273,7 +273,7 @@ Expressive Code предоставляет несколько вариантов
```
````

- [Пометка текста или строк как вставленных или удалённых с помощью `ins` или `del`](https://github.com/expressive-code/expressive-code/blob/main/packages/%40expressive-code/plugin-text-markers/README.md#selecting-marker-types-mark-ins-del):
- [Пометка текста или строк как вставленных или удалённых с помощью `ins` или `del`](https://expressive-code.com/key-features/text-markers/#selecting-inline-marker-types-mark-ins-del):

```js "return true;" ins="вставленные" del="удалённые"
function demo() {
Expand All @@ -293,7 +293,7 @@ Expressive Code предоставляет несколько вариантов
```
````

- [Объединение подсветки синтаксиса с синтаксисом типа `diff`](https://github.com/expressive-code/expressive-code/blob/main/packages/%40expressive-code/plugin-text-markers/README.md#combining-syntax-highlighting-with-diff-like-syntax):
- [Объединение подсветки синтаксиса с синтаксисом типа `diff`](https://expressive-code.com/key-features/text-markers/#combining-syntax-highlighting-with-diff-like-syntax):

```diff lang="js"
function thisIsJavaScript() {
Expand Down Expand Up @@ -323,7 +323,7 @@ Expressive Code предоставляет несколько вариантов

Необязательный заголовок блока кода может быть установлен либо с помощью атрибута `title="..."` после открывающих обратных кавычек блока кода и идентификатора языка, либо с помощью комментария к имени файла в первых строках кода.

- [Добавление вкладки имени файла с помощью комментария](https://github.com/expressive-code/expressive-code/blob/main/packages/%40expressive-code/plugin-frames/README.md#adding-titles-open-file-tab-or-terminal-window-title)
- [Добавление вкладки имени файла с помощью комментария](https://expressive-code.com/key-features/frames/#code-editor-frames)

```js
// my-test-file.js
Expand All @@ -337,7 +337,7 @@ Expressive Code предоставляет несколько вариантов
```
````

- [Добавление заголовка в окне терминала](https://github.com/expressive-code/expressive-code/blob/main/packages/%40expressive-code/plugin-frames/README.md#adding-titles-open-file-tab-or-terminal-window-title)
- [Добавление заголовка в окне терминала](https://expressive-code.com/key-features/frames/#terminal-frames)

```bash title="Установка зависимостей…"
npm install
Expand All @@ -349,7 +349,7 @@ Expressive Code предоставляет несколько вариантов
```
````

- [Отключение оконных рамок с помощью `frame="none"`](https://github.com/expressive-code/expressive-code/blob/main/packages/%40expressive-code/plugin-frames/README.md#overriding-frame-types)
- [Отключение оконных рамок с помощью `frame="none"`](https://expressive-code.com/key-features/frames/#overriding-frame-types)

```bash frame="none"
echo "Это не отображается как терминал, несмотря на использование языка bash"
Expand Down
2 changes: 1 addition & 1 deletion docs/src/content/docs/ru/guides/i18n.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -222,7 +222,7 @@ import UIStringsList from '~/components/ui-strings-list.astro';

<UIStringsList />

Блоки кода Starlight основаны на библиотеке [Expressive Code](https://github.com/expressive-code/expressive-code).
Блоки кода Starlight основаны на библиотеке [Expressive Code](https://expressive-code.com/).
Вы можете установить переводы для строк пользовательского интерфейса в том же файле JSON, используя ключи `expressiveCode`:

```json
Expand Down
53 changes: 52 additions & 1 deletion docs/src/content/docs/ru/guides/site-search.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
---
title: Поиск по сайту
description: Узнайте о встроенных в Starlight функциях поиска по сайту и о том, как их настроить.
tableOfContents:
maxHeadingLevel: 4
---

import { Tabs, TabItem, Steps } from '@astrojs/starlight/components';
Expand Down Expand Up @@ -110,13 +112,62 @@ title: Частично проиндексированная страница

#### Конфигурация DocSearch

Плагин Starlight DocSearch также поддерживает настройку компонента DocSearch с помощью следующих дополнительных опций:
Плагин Starlight DocSearch поддерживает настройку компонента DocSearch с помощью следующих встроенных опций:

- `maxResultsPerGroup`: Ограничивает количество результатов, отображаемых для каждой группы поиска. По умолчанию `5`.
- `disableUserPersonalization`: Предотвращает сохранение недавних поисков и избранных элементов пользователя в локальном хранилище. По умолчанию `false`.
- `insights`: Включает плагин Algolia Insights и отправляет события поиска в ваш индекс DocSearch. По умолчанию `false`.
- `searchParameters`: Объект, настраивающий [параметры поиска Algolia](https://www.algolia.com/doc/api-reference/search-api-parameters/).

##### Дополнительные опции DocSearch

Необходим отдельный файл конфигурации для передачи параметров функции, таких как `transformItems()` или `resultsFooterComponent()`, в компонент DocSearch.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

suggestion: I think it would sound more natural to flip the order of the sentence a little

Suggested change
Необходим отдельный файл конфигурации для передачи параметров функции, таких как `transformItems()` или `resultsFooterComponent()`, в компонент DocSearch.
Для передачи в компонент DocSearch параметров-функций, таких как `transformItems()` или `resultsFooterComponent()`, необходим отдельный файл конфигурации.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Можно и так, или «функций с параметрами».

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Не, мне кажется, там имелось в виду "параметры, значения которых являются функциями". Поэтому я сократил до "параметров-функций"


<Steps>

1. Создайте файл TypeScript, экспортирующий вашу конфигурацию DocSearch.

```ts
// src/config/docsearch.ts
import type { DocSearchClientOptions } from '@astrojs/starlight-docsearch';

export default {
appId: 'YOUR_APP_ID',
apiKey: 'YOUR_SEARCH_API_KEY',
indexName: 'YOUR_INDEX_NAME',
getMissingResultsUrl({ query }) {
return `https://github.com/algolia/docsearch/issues/new?title=${query}`;
},
// ...
} satisfies DocSearchClientOptions;
```

2. Передайте путь к вашему файлу конфигурации плагину Starlight DocSearch в `astro.config.mjs`.

```js {11-13}
// astro.config.mjs
import { defineConfig } from 'astro/config';
import starlight from '@astrojs/starlight';
import starlightDocSearch from '@astrojs/starlight-docsearch';

export default defineConfig({
integrations: [
starlight({
title: 'Сайт с DocSearch',
plugins: [
starlightDocSearch({
clientOptionsModule: './src/config/docsearch.ts',
}),
],
}),
],
});
```

</Steps>

Смотрите [Документацию по API клиента DocSearch JavaScript](https://docsearch.algolia.com/docs/api/), чтобы узнать все поддерживаемые параметры.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

suggestion: something like this would be a more accurate translation, I think

Suggested change
Смотрите [Документацию по API клиента DocSearch JavaScript](https://docsearch.algolia.com/docs/api/), чтобы узнать все поддерживаемые параметры.
Смотрите [API-документацию к JavaScript-клиенту DocSearch](https://docsearch.algolia.com/docs/api/), чтобы узнать все поддерживаемые параметры.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Так будет звучать, как будто документация принимает API-запросы, но ведь это не так?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

API — это необязательно про запросы, это любой программный интерфейс. В английском просто часто используют "API reference" в значении "руководство по API", я здесь перевел это как "API-документация".

В целом, сейчас я перечитал твой вариант, и он тоже хороший, я бы только предложил передвинуть слово "JavaScript", чтоб было "JavaScript-клиенту DocSearch", потому что у DocSearch есть несколько клиентов для разных языков

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Можно и так. Создадите PR?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Да, скоро создам


#### Перевод пользовательского интерфейса DocSearch

По умолчанию DocSearch предоставляет только английские строки пользовательского интерфейса.
Expand Down
31 changes: 26 additions & 5 deletions docs/src/content/docs/ru/reference/configuration.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -268,6 +268,11 @@ export default defineConfig({
label: '简体中文',
lang: 'zh-CN',
},
// Арабская документация в `src/content/docs/ar/`
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice catch!

ar: {
label: 'العربية',
dir: 'rtl',
},
// Русская документация в `src/content/docs/ru/`
ru: {
label: 'Русский',
Expand Down Expand Up @@ -383,10 +388,10 @@ starlight({
**тип:** `StarlightExpressiveCodeOptions | boolean`
**по умолчанию:** `true`

Starlight использует [Expressive Code](https://github.com/expressive-code/expressive-code/tree/main/packages/astro-expressive-code) для визуализации блоков кода и добавляет поддержку выделения частей примеров кода, добавления имён файлов к блокам кода и многое другое.
Starlight использует [Expressive Code](https://expressive-code.com) для визуализации блоков кода и добавляет поддержку выделения частей примеров кода, добавления имён файлов к блокам кода и многое другое.
Смотрите руководство [Блоки кода](/ru/guides/authoring-content/#блоки-кода), чтобы узнать, как использовать синтаксис выразительного кода в Markdown и MDX-содержимом.

Вы также можете использовать любые стандартные [параметры конфигурации Expressive Code](https://github.com/expressive-code/expressive-code/blob/main/packages/astro-expressive-code/README.md#configuration), как некоторые свойства, специфичные для Starlight, установив их в опции `expressiveCode` Starlight.
Вы также можете использовать любые стандартные [параметры конфигурации Expressive Code](https://expressive-code.com/reference/configuration/), как некоторые свойства, специфичные для Starlight, установив их в опции `expressiveCode` Starlight.
Например, установите опцию `styleOverrides` в Expressive Code, чтобы переопределить CSS по умолчанию. Это позволяет настраивать код, например, сделать блокам кода закругленные углы:

```js ins={2-4}
Expand All @@ -413,7 +418,7 @@ starlight({
**по умолчанию:** `['starlight-dark', 'starlight-light']`

Установите темы, используемые для оформления блоков кода.
См. [документацию по темам Expressive Code](https://github.com/expressive-code/expressive-code/blob/main/packages/astro-expressive-code/README.md#themes) для получения подробной информации о поддерживаемых форматах тем.
См. [документацию по темам Expressive Code](https://expressive-code.com/guides/themes/) для получения подробной информации о поддерживаемых форматах тем.

По умолчанию Starlight использует тёмный и светлый варианты [темы Night Owl](https://github.com/sdras/night-owl-vscode-theme) Сары Драснер.

Expand Down Expand Up @@ -446,16 +451,32 @@ starlight({

### `pagefind`

**тип:** `boolean`
**тип:** <code>boolean | <a href="#pagefindoptions">PagefindOptions</a></code>
**по умолчанию:** `true`

Определите, включен ли в Starlight поставщик поиска по сайту по умолчанию — [Pagefind](https://pagefind.app/).
Настройте стандартный поставщик поиска по сайту Starlight — [Pagefind](https://pagefind.app/).

Установите значение `false`, чтобы отключить индексацию вашего сайта с помощью Pagefind.
Это также скроет стандартный пользовательский интерфейс поиска, если он используется.

Pagefind не может быть включен, если для параметра [`prerender`](#prerender) установлено значение `false`.

Установите `pagefind` в объект, чтобы настроить клиент поиска Pagefind.
Смотрите главу [Настройка ранжирования результатов Pagefind](https://pagefind.app/docs/ranking/) в документации Pagefind для получения дополнительной информации о том, как использовать параметр `pagefind.ranking` для управления расчётом ранжирования результатов поиска.

#### `PagefindOptions`

```ts
interface PagefindOptions {
ranking?: {
pageLength?: number;
termFrequency?: number;
termSaturation?: number;
termSimilarity?: number;
};
}
```

### `prerender`

**тип:** `boolean`
Expand Down
Loading