I18n
Настройка языка важно
Вам нужно установить опцию lang
для каждого языка. Даже если вы используете только один язык, вы должны установить lang
в .vuepress/config.{js,ts}
.
Зачем его устанавливать?
Чтобы предоставить правильный текст локали, тема должна знать, какой язык использует каждый каталог.
// .vuepress/config.ts
import { defineUserConfig } from "vuepress";
export default defineUserConfig({
// Установите язык, который вы используете
lang: "en-US",
});
// .vuepress/config.js
export default {
// Установите язык, который вы используете
lang: "en-US",
};
// .vuepress/config.ts
import { defineUserConfig } from "vuepress";
export default defineUserConfig({
locales: {
"/": {
// Установите язык, который вы используете
lang: "en-US",
},
"/zh/": {
// Установите язык, который вы используете
lang: "zh-CN",
},
"/ru/": {
// Установите язык, который вы используете
lang: "ru-RU",
},
},
});
// .vuepress/config.js
export default {
locales: {
"/": {
// Установите язык, который вы используете
lang: "en-US",
},
"/zh/": {
// Установите язык, который вы используете
lang: "zh-CN",
},
"/ru/": {
// Установите язык, который вы используете
lang: "ru-RU",
},
},
};
Интернационализация
locales
— это объект, ключом которого является префикс пути каждого языка, а значением — конфигурация этого языка. Объект значения может включать в себя title
, description
, lang
и т. д.
Инфо
Для получения подробной информации о нескольких языках смотрите Официальную документацию
Вы должны установить опцию lang
для каждого языка, чтобы темы и плагины могли правильно их обрабатывать.
Если объекты locales
содержат только ключ "/"
, тема не будет отображать раскрывающееся меню языка. Когда вы устанавливаете несколько ключей через locales
(когда есть несколько языков), мы будем отображать раскрывающееся меню языка на панели навигации.
Поддерживаемые языки
- Simplified Chinese (zh-CN)
- Traditional Chinese (zh-TW)
- English (United States) (en-US)
- German (de-DE)
- German (Australia) (de-AT)
- Русский (ru-RU)
- Ukrainian (uk-UA)
- Vietnamese (vi-VN)
- Portuguese (Brazil) (pt-BR)
- Polish (pl-PL)
- French (fr-FR)
- Spanish (es-ES)
- Slovak (sk-SK)
- Японский (ja-JP)
- Turkish (tr-TR)
- Korean (ko-KR)
- Finnish (fi-FI)
- Indonesian (id-ID)
- Dutch (nl-NL)
Заметка
Если вам нужна многоязычная поддержка других языков, вы можете установить локали для темы и плагинов, это также дает вам возможность настраивать встроенные локали. Подробнее смотрите в разделе Параметры темы I18n.
Также приветствуется отправка PR для всех файлов с именем locale.ts
или в папке locale
в этом репозитории.
Настройка параметров для каждого языка
Подобно конфигурации сайта и конфигурации темы @vuepress/theme-default
, vuepress-theme-hope
также поддерживает установку параметра locale
в параметрах темы и установку разных конфигураций для каждого языка.
// .vuepress/config.ts
import { defineUserConfig } from "vuepress";
import { hopeTheme } from "vuepress-theme-hope";
export default defineUserConfig({
locales: {
"/": {
lang: "en-US",
},
"/zh/": {
lang: "zh-CN",
},
"/ru/": {
lang: "ru-RU",
},
},
theme: hopeTheme({
// common config
// ...
locales: {
"/": {
// конфиг для Английского
// ...
},
"/zh/": {
// конфиг для Китайского
// ...
},
"/ru/": {
// конфиг для Русского
// ...
},
},
}),
});
// .vuepress/config.js
import { hopeTheme } from "vuepress-theme-hope";
export default {
locales: {
"/": {
lang: "en-US",
},
"/zh/": {
lang: "zh-CN",
},
"/ru/": {
lang: "ru-RU",
},
},
theme: hopeTheme({
// common config
// ...
locales: {
"/": {
// конфиг для Английского
// ...
},
"/zh/": {
// конфиг для Китайского
// ...
},
"/ru/": {
// конфиг для Русского
// ...
},
},
}),
};