From e03a19615e1ddd37f29cb21163ec4368662e2b84 Mon Sep 17 00:00:00 2001 From: Sergey Shorokhov Date: Fri, 13 Dec 2024 15:05:34 +0300 Subject: [PATCH] Add `ru` locale and `i18n` for site (#11) * Config: add `ru` locale and locale dropdown in navbar * Add `ru` docs * Add `ru` blog * Add `ru` locale for site --- docusaurus.config.ts | 6 +- i18n/ru/code.json | 444 ++++++++++++++++++ .../2024/11-01-welcome/index.mdx | 62 +++ .../2024/11-01-welcome/index.module.css | 10 + .../authors.yml | 8 + .../options.json | 14 + .../docusaurus-plugin-content-blog/tags.yml | 0 .../current.json | 14 + .../current/core-projects/Metamod-R/index.md | 30 ++ .../core-projects/ReGameDLL_CS/index.md | 48 ++ .../current/core-projects/ReHLDS/index.md | 42 ++ .../current/core-projects/_category_.json | 8 + .../current/intro.md | 37 ++ i18n/ru/docusaurus-theme-classic/footer.json | 34 ++ i18n/ru/docusaurus-theme-classic/navbar.json | 22 + 15 files changed, 778 insertions(+), 1 deletion(-) create mode 100644 i18n/ru/code.json create mode 100644 i18n/ru/docusaurus-plugin-content-blog/2024/11-01-welcome/index.mdx create mode 100644 i18n/ru/docusaurus-plugin-content-blog/2024/11-01-welcome/index.module.css create mode 100644 i18n/ru/docusaurus-plugin-content-blog/authors.yml create mode 100644 i18n/ru/docusaurus-plugin-content-blog/options.json create mode 100644 i18n/ru/docusaurus-plugin-content-blog/tags.yml create mode 100644 i18n/ru/docusaurus-plugin-content-docs/current.json create mode 100644 i18n/ru/docusaurus-plugin-content-docs/current/core-projects/Metamod-R/index.md create mode 100644 i18n/ru/docusaurus-plugin-content-docs/current/core-projects/ReGameDLL_CS/index.md create mode 100644 i18n/ru/docusaurus-plugin-content-docs/current/core-projects/ReHLDS/index.md create mode 100644 i18n/ru/docusaurus-plugin-content-docs/current/core-projects/_category_.json create mode 100644 i18n/ru/docusaurus-plugin-content-docs/current/intro.md create mode 100644 i18n/ru/docusaurus-theme-classic/footer.json create mode 100644 i18n/ru/docusaurus-theme-classic/navbar.json diff --git a/docusaurus.config.ts b/docusaurus.config.ts index 9b8a67e..4714c0e 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -28,7 +28,7 @@ const config: Config = { // may want to replace "en" with "zh-Hans". i18n: { defaultLocale: "en", - locales: ["en"], + locales: ["en", "ru"], }, presets: [ @@ -88,6 +88,10 @@ const config: Config = { label: "Tutorial", }, { to: "/blog", label: "Blog", position: "left" }, + { + type: 'localeDropdown', + position: 'right', + }, { href: "https://github.com/rehlds", label: "GitHub", diff --git a/i18n/ru/code.json b/i18n/ru/code.json new file mode 100644 index 0000000..ebac331 --- /dev/null +++ b/i18n/ru/code.json @@ -0,0 +1,444 @@ +{ + "theme.ErrorPageContent.title": { + "message": "На странице произошёл сбой.", + "description": "The title of the fallback page when the page crashed" + }, + "theme.BackToTopButton.buttonAriaLabel": { + "message": "Прокрутка к началу", + "description": "The ARIA label for the back to top button" + }, + "theme.blog.archive.title": { + "message": "Архив", + "description": "The page & hero title of the blog archive page" + }, + "theme.blog.archive.description": { + "message": "Архив", + "description": "The page & hero description of the blog archive page" + }, + "theme.blog.paginator.navAriaLabel": { + "message": "Навигация по странице списка блогов", + "description": "The ARIA label for the blog pagination" + }, + "theme.blog.paginator.newerEntries": { + "message": "Следующие записи", + "description": "The label used to navigate to the newer blog posts page (previous page)" + }, + "theme.blog.paginator.olderEntries": { + "message": "Предыдущие записи", + "description": "The label used to navigate to the older blog posts page (next page)" + }, + "theme.blog.post.paginator.navAriaLabel": { + "message": "Навигация по странице поста блога", + "description": "The ARIA label for the blog posts pagination" + }, + "theme.blog.post.paginator.newerPost": { + "message": "Следующий пост", + "description": "The blog post button label to navigate to the newer/previous post" + }, + "theme.blog.post.paginator.olderPost": { + "message": "Предыдущий пост", + "description": "The blog post button label to navigate to the older/next post" + }, + "theme.tags.tagsPageLink": { + "message": "Посмотреть все теги", + "description": "The label of the link targeting the tag list page" + }, + "theme.colorToggle.ariaLabel": { + "message": "Переключение между тёмным и светлым режимом (сейчас используется {mode})", + "description": "The ARIA label for the navbar color mode toggle" + }, + "theme.colorToggle.ariaLabel.mode.dark": { + "message": "Тёмный режим", + "description": "The name for the dark color mode" + }, + "theme.colorToggle.ariaLabel.mode.light": { + "message": "Светлый режим", + "description": "The name for the light color mode" + }, + "theme.docs.breadcrumbs.navAriaLabel": { + "message": "Навигационная цепочка текущей страницы", + "description": "The ARIA label for the breadcrumbs" + }, + "theme.docs.DocCard.categoryDescription.plurals": { + "message": "{count} элемент|{count} элемента|{count} элементов", + "description": "The default description for a category card in the generated index about how many items this category includes" + }, + "theme.docs.paginator.navAriaLabel": { + "message": "Страница документа", + "description": "The ARIA label for the docs pagination" + }, + "theme.docs.paginator.previous": { + "message": "Предыдущая страница", + "description": "The label used to navigate to the previous doc" + }, + "theme.docs.paginator.next": { + "message": "Следующая страница", + "description": "The label used to navigate to the next doc" + }, + "theme.docs.tagDocListPageTitle.nDocsTagged": { + "message": "Одна страница|{count} страницы|{count} страниц", + "description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)" + }, + "theme.docs.tagDocListPageTitle": { + "message": "{nDocsTagged} с тегом \"{tagName}\"", + "description": "The title of the page for a docs tag" + }, + "theme.docs.versionBadge.label": { + "message": "Версия: {versionLabel}" + }, + "theme.docs.versions.unreleasedVersionLabel": { + "message": "Это документация для будущей версии {siteTitle} {versionLabel}.", + "description": "The label used to tell the user that he's browsing an unreleased doc version" + }, + "theme.docs.versions.unmaintainedVersionLabel": { + "message": "Это документация {siteTitle} для версии {versionLabel}, которая уже не поддерживается.", + "description": "The label used to tell the user that he's browsing an unmaintained doc version" + }, + "theme.docs.versions.latestVersionSuggestionLabel": { + "message": "Актуальная документация находится на странице {latestVersionLink} ({versionLabel}).", + "description": "The label used to tell the user to check the latest version" + }, + "theme.docs.versions.latestVersionLinkLabel": { + "message": "последней версии", + "description": "The label used for the latest version suggestion link label" + }, + "theme.common.editThisPage": { + "message": "Отредактировать эту страницу", + "description": "The link label to edit the current page" + }, + "theme.common.headingLinkTitle": { + "message": "Прямая ссылка на {heading}", + "description": "Title for link to heading" + }, + "theme.lastUpdated.atDate": { + "message": " {date}", + "description": "The words used to describe on which date a page has been last updated" + }, + "theme.lastUpdated.byUser": { + "message": " от {user}", + "description": "The words used to describe by who the page has been last updated" + }, + "theme.lastUpdated.lastUpdatedAtBy": { + "message": "Последнее обновление{atDate}{byUser}", + "description": "The sentence used to display when a page has been last updated, and by who" + }, + "theme.NotFound.title": { + "message": "Страница не найдена", + "description": "The title of the 404 page" + }, + "theme.navbar.mobileVersionsDropdown.label": { + "message": "Версии", + "description": "The label for the navbar versions dropdown on mobile view" + }, + "theme.tags.tagsListLabel": { + "message": "Теги:", + "description": "The label alongside a tag list" + }, + "theme.admonition.caution": { + "message": "предупреждение", + "description": "The default label used for the Caution admonition (:::caution)" + }, + "theme.admonition.danger": { + "message": "осторожно", + "description": "The default label used for the Danger admonition (:::danger)" + }, + "theme.admonition.info": { + "message": "к сведению", + "description": "The default label used for the Info admonition (:::info)" + }, + "theme.admonition.note": { + "message": "примечание", + "description": "The default label used for the Note admonition (:::note)" + }, + "theme.admonition.tip": { + "message": "подсказка", + "description": "The default label used for the Tip admonition (:::tip)" + }, + "theme.admonition.warning": { + "message": "предупреждение", + "description": "The default label used for the Warning admonition (:::warning)" + }, + "theme.AnnouncementBar.closeButtonAriaLabel": { + "message": "Закрыть", + "description": "The ARIA label for close button of announcement bar" + }, + "theme.blog.sidebar.navAriaLabel": { + "message": "Навигация по последним постам в блоге", + "description": "The ARIA label for recent posts in the blog sidebar" + }, + "theme.CodeBlock.copied": { + "message": "Скопировано", + "description": "The copied button label on code blocks" + }, + "theme.CodeBlock.copyButtonAriaLabel": { + "message": "Скопировать в буфер обмена", + "description": "The ARIA label for copy code blocks button" + }, + "theme.CodeBlock.copy": { + "message": "Скопировать", + "description": "The copy button label on code blocks" + }, + "theme.CodeBlock.wordWrapToggle": { + "message": "Переключить перенос по строкам", + "description": "The title attribute for toggle word wrapping button of code block lines" + }, + "theme.DocSidebarItem.expandCategoryAriaLabel": { + "message": "Expand sidebar category '{label}'", + "description": "The ARIA label to expand the sidebar category" + }, + "theme.DocSidebarItem.collapseCategoryAriaLabel": { + "message": "Collapse sidebar category '{label}'", + "description": "The ARIA label to collapse the sidebar category" + }, + "theme.NavBar.navAriaLabel": { + "message": "Main", + "description": "The ARIA label for the main navigation" + }, + "theme.NotFound.p1": { + "message": "К сожалению, мы не смогли найти запрашиваемую вами страницу.", + "description": "The first paragraph of the 404 page" + }, + "theme.NotFound.p2": { + "message": "Пожалуйста, обратитесь к владельцу сайта, с которого вы перешли на эту ссылку, чтобы сообщить ему, что ссылка не работает.", + "description": "The 2nd paragraph of the 404 page" + }, + "theme.navbar.mobileLanguageDropdown.label": { + "message": "Языки", + "description": "The label for the mobile language switcher dropdown" + }, + "theme.TOCCollapsible.toggleButtonLabel": { + "message": "Содержание этой страницы", + "description": "The label used by the button on the collapsible TOC component" + }, + "theme.blog.post.readMore": { + "message": "Читать дальше", + "description": "The label used in blog post item excerpts to link to full blog posts" + }, + "theme.blog.post.readMoreLabel": { + "message": "Подробнее о {title}", + "description": "The ARIA label for the link to full blog posts from excerpts" + }, + "theme.blog.post.readingTime.plurals": { + "message": "{readingTime} мин. чтения|{readingTime} мин. чтения|{readingTime} мин. чтения", + "description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)" + }, + "theme.docs.breadcrumbs.home": { + "message": "Главная страница", + "description": "The ARIA label for the home page in the breadcrumbs" + }, + "theme.docs.sidebar.collapseButtonTitle": { + "message": "Свернуть сайдбар", + "description": "The title attribute for collapse button of doc sidebar" + }, + "theme.docs.sidebar.collapseButtonAriaLabel": { + "message": "Свернуть сайдбар", + "description": "The title attribute for collapse button of doc sidebar" + }, + "theme.docs.sidebar.navAriaLabel": { + "message": "Docs sidebar", + "description": "The ARIA label for the sidebar navigation" + }, + "theme.docs.sidebar.closeSidebarButtonAriaLabel": { + "message": "Закрыть панель навигации", + "description": "The ARIA label for close button of mobile sidebar" + }, + "theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": { + "message": "← Перейти к главному меню", + "description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)" + }, + "theme.docs.sidebar.toggleSidebarButtonAriaLabel": { + "message": "Переключить навигационную панель", + "description": "The ARIA label for hamburger menu button of mobile navigation" + }, + "theme.docs.sidebar.expandButtonTitle": { + "message": "Развернуть сайдбар", + "description": "The ARIA label and title attribute for expand button of doc sidebar" + }, + "theme.docs.sidebar.expandButtonAriaLabel": { + "message": "Развернуть сайдбар", + "description": "The ARIA label and title attribute for expand button of doc sidebar" + }, + "theme.SearchBar.seeAll": { + "message": "Посмотреть все результаты ({count})" + }, + "theme.SearchPage.documentsFound.plurals": { + "message": "{count} документ|{count} документа|{count} документов", + "description": "Pluralized label for \"{count} documents found\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)" + }, + "theme.SearchPage.existingResultsTitle": { + "message": "Результаты поиска по запросу \"{query}\"", + "description": "The search page title for non-empty query" + }, + "theme.SearchPage.emptyResultsTitle": { + "message": "Поиск по сайту", + "description": "The search page title for empty query" + }, + "theme.SearchPage.inputPlaceholder": { + "message": "Введите фразу для поиска", + "description": "The placeholder for search page input" + }, + "theme.SearchPage.inputLabel": { + "message": "Поиск", + "description": "The ARIA label for search page input" + }, + "theme.SearchPage.algoliaLabel": { + "message": "Поиск от Algolia", + "description": "The ARIA label for Algolia mention" + }, + "theme.SearchPage.noResultsText": { + "message": "По запросу ничего не найдено", + "description": "The paragraph for empty search result" + }, + "theme.SearchPage.fetchingNewResults": { + "message": "Загрузка новых результатов поиска...", + "description": "The paragraph for fetching new search results" + }, + "theme.SearchBar.label": { + "message": "Поиск", + "description": "The ARIA label and placeholder for search button" + }, + "theme.SearchModal.searchBox.resetButtonTitle": { + "message": "Очистить", + "description": "The label and ARIA label for search box reset button" + }, + "theme.SearchModal.searchBox.cancelButtonText": { + "message": "Отменить", + "description": "The label and ARIA label for search box cancel button" + }, + "theme.SearchModal.startScreen.recentSearchesTitle": { + "message": "Недавнее", + "description": "The title for recent searches" + }, + "theme.SearchModal.startScreen.noRecentSearchesText": { + "message": "Нет истории поиска", + "description": "The text when no recent searches" + }, + "theme.SearchModal.startScreen.saveRecentSearchButtonTitle": { + "message": "Сохранить поисковый запрос", + "description": "The label for save recent search button" + }, + "theme.SearchModal.startScreen.removeRecentSearchButtonTitle": { + "message": "Удалить запись из историю", + "description": "The label for remove recent search button" + }, + "theme.SearchModal.startScreen.favoriteSearchesTitle": { + "message": "Избранное", + "description": "The title for favorite searches" + }, + "theme.SearchModal.startScreen.removeFavoriteSearchButtonTitle": { + "message": "Удалить запись из избранное", + "description": "The label for remove favorite search button" + }, + "theme.SearchModal.errorScreen.titleText": { + "message": "Невозможно загрузить результаты поиска", + "description": "The title for error screen of search modal" + }, + "theme.SearchModal.errorScreen.helpText": { + "message": "Проверьте подключение к интернету.", + "description": "The help text for error screen of search modal" + }, + "theme.SearchModal.footer.selectText": { + "message": "выбрать", + "description": "The explanatory text of the action for the enter key" + }, + "theme.SearchModal.footer.selectKeyAriaLabel": { + "message": "Клавиша Enter", + "description": "The ARIA label for the Enter key button that makes the selection" + }, + "theme.SearchModal.footer.navigateText": { + "message": "навигация", + "description": "The explanatory text of the action for the Arrow up and Arrow down key" + }, + "theme.SearchModal.footer.navigateUpKeyAriaLabel": { + "message": "Клавиша стрелка вверх", + "description": "The ARIA label for the Arrow up key button that makes the navigation" + }, + "theme.SearchModal.footer.navigateDownKeyAriaLabel": { + "message": "Клавиша стрелка вниз", + "description": "The ARIA label for the Arrow down key button that makes the navigation" + }, + "theme.SearchModal.footer.closeText": { + "message": "закрыть", + "description": "The explanatory text of the action for Escape key" + }, + "theme.SearchModal.footer.closeKeyAriaLabel": { + "message": "Клавиша Escape", + "description": "The ARIA label for the Escape key button that close the modal" + }, + "theme.SearchModal.footer.searchByText": { + "message": "Поиск от", + "description": "The text explain that the search is making by Algolia" + }, + "theme.SearchModal.noResultsScreen.noResultsText": { + "message": "Нет результатов по запросу", + "description": "The text explains that there are no results for the following search" + }, + "theme.SearchModal.noResultsScreen.suggestedQueryText": { + "message": "Попробуйте", + "description": "The text for the suggested query when no results are found for the following search" + }, + "theme.SearchModal.noResultsScreen.reportMissingResultsText": { + "message": "Нет подходящего результата поиска?", + "description": "The text for the question where the user thinks there are missing results" + }, + "theme.SearchModal.noResultsScreen.reportMissingResultsLinkText": { + "message": "Сообщите нам.", + "description": "The text for the link to report missing results" + }, + "theme.SearchModal.placeholder": { + "message": "Поиск", + "description": "The placeholder of the input of the DocSearch pop-up modal" + }, + "theme.blog.post.plurals": { + "message": "{count} запись|{count} записи|{count} записей", + "description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)" + }, + "theme.blog.tagTitle": { + "message": "{nPosts} с тегом \"{tagName}\"", + "description": "The title of the page for a blog tag" + }, + "theme.blog.author.pageTitle": { + "message": "{authorName} - {nPosts}", + "description": "The title of the page for a blog author" + }, + "theme.blog.authorsList.pageTitle": { + "message": "Authors", + "description": "The title of the authors page" + }, + "theme.blog.authorsList.viewAll": { + "message": "View All Authors", + "description": "The label of the link targeting the blog authors page" + }, + "theme.blog.author.noPosts": { + "message": "This author has not written any posts yet.", + "description": "The text for authors with 0 blog post" + }, + "theme.contentVisibility.unlistedBanner.title": { + "message": "Unlisted page", + "description": "The unlisted content banner title" + }, + "theme.contentVisibility.unlistedBanner.message": { + "message": "This page is unlisted. Search engines will not index it, and only users having a direct link can access it.", + "description": "The unlisted content banner message" + }, + "theme.contentVisibility.draftBanner.title": { + "message": "Draft page", + "description": "The draft content banner title" + }, + "theme.contentVisibility.draftBanner.message": { + "message": "This page is a draft. It will only be visible in dev and be excluded from the production build.", + "description": "The draft content banner message" + }, + "theme.ErrorPageContent.tryAgain": { + "message": "Попробуйте ещё раз", + "description": "The label of the button to try again rendering when the React error boundary captures an error" + }, + "theme.common.skipToMainContent": { + "message": "Перейти к основному содержимому", + "description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation" + }, + "theme.tags.tagsPageTitle": { + "message": "Теги", + "description": "The title of the tag list page" + } +} diff --git a/i18n/ru/docusaurus-plugin-content-blog/2024/11-01-welcome/index.mdx b/i18n/ru/docusaurus-plugin-content-blog/2024/11-01-welcome/index.mdx new file mode 100644 index 0000000..8d7f526 --- /dev/null +++ b/i18n/ru/docusaurus-plugin-content-blog/2024/11-01-welcome/index.mdx @@ -0,0 +1,62 @@ +--- +title: "Станьте частью команды менеджеров сообщества ReHLDS" +description: "Сообщество ReHLDS ищет увлечённых менеджеров сообщества, чтобы создать дружелюбную атмосферу для всех участников. Присоединяйтесь и помогите в развитии нашего сообщества!" +keywords: + - ReHLDS + - управление сообществом + - открытое программное обеспечение + - GitHub +authors: + - wopox1337 +tags: + - рекрутинг + - сообщество + - открытое ПО + - волонтёрство +--- + +# Станьте частью команды менеджеров сообщества ReHLDS + +Сообщество ReHLDS активно растёт, и наша цель — сделать его более дружелюбным и вовлекающим для всех участников, будь то новички или опытные разработчики. Для поддержки этих целей мы ищем увлечённых менеджеров сообщества, которые хотят внести свой вклад в создание положительного воздействия. + +{/* truncate */} + +## Почему стоит присоединиться? + +Как менеджер сообщества, вы сыграете ключевую роль в формировании опыта пользователей и разработчиков в нашем сообществе. От модерации обсуждений и помощи новичкам до организации ресурсов и поддержки создания контента — у вас будет множество возможностей внести значимый вклад. + +## Что вам предстоит делать + +У нас есть [🤝 Инициативы сообщества и UX](https://github.com/orgs/rehlds/projects/1/views/1), где содержится список задач и приоритетов для команды. Вы сможете выбрать задачи, которые вам наиболее интересны, или предложить идеи, которые соответствуют нашим целям. + +**Основные обязанности**: + +- Взаимодействие с участниками сообщества для создания дружелюбной и поддерживающей атмосферы. +- Организация, маркировка и управление задачами и пулл-запросами. +- Помощь в сборе обратной связи от сообщества и улучшении наших ресурсов. +- Совместная работа с другими участниками на инициативы сообщества. + +## Гибкость в вкладе + +Хотя у нас есть план задач, мы ценим гибкость. Если вам интересна определённая область, мы с радостью поддержим ваши идеи и усилия в этой сфере. + +## Как подать заявку + +Если вы хотите присоединиться к нам, заполните [эту форму Google](https://forms.gle/fhyrnhnSFu4g4Cmz8) с основной информацией о вашем опыте, контактных данных и интересах. Мы с нетерпением ждём знакомства с вами! + +**Давайте вместе сделаем сообщество ReHLDS более дружелюбным и ярким!** + +import styles from "./index.module.css"; + +<> +
+ +
+ diff --git a/i18n/ru/docusaurus-plugin-content-blog/2024/11-01-welcome/index.module.css b/i18n/ru/docusaurus-plugin-content-blog/2024/11-01-welcome/index.module.css new file mode 100644 index 0000000..00035d4 --- /dev/null +++ b/i18n/ru/docusaurus-plugin-content-blog/2024/11-01-welcome/index.module.css @@ -0,0 +1,10 @@ +.wrapper { + width: 100%; + max-width: 600px; + color: aqua; +} + +.iframe { + width: 100%; + height: 100svh; +} diff --git a/i18n/ru/docusaurus-plugin-content-blog/authors.yml b/i18n/ru/docusaurus-plugin-content-blog/authors.yml new file mode 100644 index 0000000..65a650f --- /dev/null +++ b/i18n/ru/docusaurus-plugin-content-blog/authors.yml @@ -0,0 +1,8 @@ +wopox1337: + name: Сергей Шорохов + title: Software Engineer + url: https://SergeyShorokhov.github.io + image_url: https://github.com/SergeyShorokhov.png + page: true + socials: + github: SergeyShorokhov diff --git a/i18n/ru/docusaurus-plugin-content-blog/options.json b/i18n/ru/docusaurus-plugin-content-blog/options.json new file mode 100644 index 0000000..2479ee1 --- /dev/null +++ b/i18n/ru/docusaurus-plugin-content-blog/options.json @@ -0,0 +1,14 @@ +{ + "title": { + "message": "Блог", + "description": "The title for the blog used in SEO" + }, + "description": { + "message": "Блог", + "description": "The description for the blog used in SEO" + }, + "sidebar.title": { + "message": "Недавние посты", + "description": "The label for the left sidebar" + } +} diff --git a/i18n/ru/docusaurus-plugin-content-blog/tags.yml b/i18n/ru/docusaurus-plugin-content-blog/tags.yml new file mode 100644 index 0000000..e69de29 diff --git a/i18n/ru/docusaurus-plugin-content-docs/current.json b/i18n/ru/docusaurus-plugin-content-docs/current.json new file mode 100644 index 0000000..90af9c6 --- /dev/null +++ b/i18n/ru/docusaurus-plugin-content-docs/current.json @@ -0,0 +1,14 @@ +{ + "version.label": { + "message": "Следующая", + "description": "The label for version current" + }, + "sidebar.tutorialSidebar.category.Core projects": { + "message": "Основные проекты", + "description": "The label for category Core projects in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Core projects.link.generated-index.description": { + "message": "Основные проекты организации ReHLDS, о которых вы можете прочитать.", + "description": "The generated-index page description for category Core projects in sidebar tutorialSidebar" + } +} diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/core-projects/Metamod-R/index.md b/i18n/ru/docusaurus-plugin-content-docs/current/core-projects/Metamod-R/index.md new file mode 100644 index 0000000..98c8be2 --- /dev/null +++ b/i18n/ru/docusaurus-plugin-content-docs/current/core-projects/Metamod-R/index.md @@ -0,0 +1,30 @@ +--- +id: metamod-r +title: Metamod-r +description: Metamod-r — это оптимизированная версия оригинального Metamod, улучшающая производительность и совместимость для серверов Half-Life 1. +slug: /metamod-r +--- + +# Что такое Metamod-r? + +Metamod-r — это улучшенная версия оригинального Metamod, менеджера плагинов/DLL, который функционирует как промежуточный слой между движком Half-Life и игровым модом. Такой подход позволяет динамически загружать и выгружать DLL-плагины, добавляя возможность кастомизации серверов Half-Life или любых игровых модов на этом движке. + +Основанный на оригинальном Metamod, разработанном Уиллом Дэем, Metamod-r включает в себя значительные улучшения, такие как оптимизация кода и повышенная производительность, при полном сохранении совместимости со всеми плагинами, созданными для Metamod. Ключевые улучшения в Metamod-r включают оптимизации из Metamod-p, более ранней модифицированной версии от Юсси Кивилинны, а также дополнительные доработки. + +## Основные преимущества Metamod-r + +1. **Оптимизация производительности** + Metamod-r содержит высокооптимизированное ядро, реализованное с использованием компилятора Just-In-Time (JIT), что значительно улучшает производительность по сравнению с оригинальным Metamod. Это обеспечивает более плавную работу и уменьшенное использование ресурсов, особенно при высокой нагрузке на сервер. + +2. **Улучшенный и чище организованный код** + В рамках проекта Metamod-r была проведена глубокая доработка кода, что привело к его большей читаемости и поддерживаемости. Это повышение качества кода способствует как производительности, так и стабильности, делая его идеальным выбором для современных серверов Half-Life 1. + +3. **Расширенная совместимость с ReHLDS** + Metamod-r полностью совместим как с оригинальным HLDS (Half-Life Dedicated Server), так и с ReHLDS — переработанной версией HLDS. Использование Metamod-r с ReHLDS (API 3.1+) позволяет получить дополнительные преимущества производительности и улучшения, ещё больше улучшая работу серверов. + +4. **Динамическое управление плагинами** + Как и в оригинальном Metamod, Metamod-r поддерживает динамическую загрузку и выгрузку плагинов, позволяя администраторам настраивать окружение сервера без перезапуска. Эта гибкость упрощает эксперименты с различными конфигурациями плагинов для поиска оптимальных решений. + +## История и назначение + +Metamod-r был разработан для устранения ограничений и устаревшего кода оригинального Metamod. Построенный на основе, заложенной Уиллом Дэем, а затем расширенной Юсси Кивилинной в Metamod-p, Metamod-r объединяет эти улучшения в одной, высоко оптимизированной версии. Основная цель проекта — модернизация Metamod при сохранении его ключевой функциональности и совместимости, делая его предпочтительным выбором для серверов Half-Life 1 сегодня. diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/core-projects/ReGameDLL_CS/index.md b/i18n/ru/docusaurus-plugin-content-docs/current/core-projects/ReGameDLL_CS/index.md new file mode 100644 index 0000000..84d0756 --- /dev/null +++ b/i18n/ru/docusaurus-plugin-content-docs/current/core-projects/ReGameDLL_CS/index.md @@ -0,0 +1,48 @@ +--- +id: regamedll_cs +title: ReGameDLL_CS +description: ReGameDLL_CS представляет собой реверс-инжинированную, улучшенную версию GameDLL для Counter-Strike, включающую расширенный функционал, оптимизации и новые возможности API. +slug: /regamedll-cs +--- + +# Что такое ReGameDLL_CS? + +ReGameDLL_CS — это реверс-инжинированная версия оригинальной игровой библиотеки Counter-Strike (mp.dll / cs.so), созданная на базе HLDS (build 6153 beta) с использованием информации DWARF debug из Linux-версии HLDS (cs.so). Этот подход позволил создать более стабильную и функционально расширенную версию для серверов Counter-Strike 1.6 и Counter-Strike: Condition Zero. + +## Основные возможности и улучшения + +ReGameDLL_CS предназначен для обеспечения улучшенной, стабильной GameDLL с расширенным функционалом для модификаций и плагинов. Вот некоторые из ключевых возможностей и улучшений: + +1. **Оптимизация производительности и сети** + GameDLL включает множество оптимизаций, особенно в части сетевой производительности, что снижает задержки и улучшает отклик сервера во время игры. + +2. **Расширенные настройки и функции** + ReGameDLL_CS добавляет новые и улучшенные игровые настройки, позволяя администраторам серверов и моддерам иметь больший контроль над игровым процессом. Расширенная поддержка API позволяет создавать более гибкие и конфигурируемые моды и плагины. + +3. **Улучшенная безопасность** + Реверс-инжинированный код содержит критические улучшения безопасности, устраняющие распространённые уязвимости и обеспечивающие более безопасную среду для игроков и администраторов серверов. + +4. **Поддержка для разработчиков и создателей карт** + ReGameDLL_CS предоставляет дополнительные функции для разработчиков и дизайнеров карт, включая улучшенные опции для карт формата .bsp и расширенные возможности скриптинга. Это позволяет создавать более сложные и интересные игровые сценарии. + +## Важное замечание о совместимости + +:::warning +ReGameDLL_CS не является бинарно совместимым с оригинальным HLDS, так как он был скомпилирован с использованием других компиляторов, чем те, которые использовались для оригинального мода Counter-Strike. Плагины, которые зависят от бинарного анализа кода (например, Orpheu), могут работать некорректно с ReGameDLL_CS. +::: + +## Установка и использование + +ReGameDLL_CS полностью совместим с официальными модами Counter-Strike 1.6 и Condition Zero от Valve. Для установки ReGameDLL_CS необходимо скачать бинарные файлы и заменить оригинальные `mp.dll` или `cs.so` в вашей серверной конфигурации. + +### Дополнительные опции + +- **Установка zBot для CS 1.6** + - Распакуйте все файлы из архива zBot. + - Добавьте опцию `-bots` в командную строку запуска HLDS. + +- **Включение улучшенного AI заложников из CSCZ для CS 1.6** + - Распакуйте все файлы из соответствующего архива. + - Добавьте опцию `-host-improv` в командную строку запуска HLDS. + +ReGameDLL_CS объединяет стабильность, безопасность и расширенные возможности, делая его идеальным выбором для тех, кто хочет улучшить и поддерживать свои серверы Counter-Strike с помощью современных инструментов и настроек. diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/core-projects/ReHLDS/index.md b/i18n/ru/docusaurus-plugin-content-docs/current/core-projects/ReHLDS/index.md new file mode 100644 index 0000000..eb5853a --- /dev/null +++ b/i18n/ru/docusaurus-plugin-content-docs/current/core-projects/ReHLDS/index.md @@ -0,0 +1,42 @@ +--- +sidebar_position: 1 +id: rehlds +title: ReHLDS +description: ReHLDS — это переработанная версия оригинального HLDS с улучшенной безопасностью, производительностью и возможностями моддинга для таких игр, как Half-Life и Counter-Strike 1.6. +slug: /rehlds +--- + +# Что такое ReHLDS? + +ReHLDS (Reverse-engineered Half-Life Dedicated Server) — это переработанный и улучшенный серверный движок, основанный на оригинальном HLDS (Half-Life Dedicated Server) от Valve. Изначально построенный на основе версии build 6153, ReHLDS был разработан как проект с открытым исходным кодом для устранения многочисленных проблем и ограничений оригинального движка. Сегодня он служит стабильным и безопасным решением для серверов таких игр, как Half-Life и Counter-Strike 1.6, а также других игр, работающих на движке HLDS. + +## Почему стоит использовать ReHLDS? + +ReHLDS предлагает значительные преимущества как для администраторов серверов, так и для разработчиков. Проект поддерживается активным сообществом разработчиков, которые постоянно интегрируют последние улучшения безопасности, оптимизации производительности и расширенные настройки конфигурации. Ниже перечислены основные преимущества использования ReHLDS при управлении современными HLDS-серверами: + +### Ключевые преимущества ReHLDS + +1. **Улучшенная безопасность** + ReHLDS включает в себя множество исправлений и улучшений безопасности, защищая серверы от известных уязвимостей оригинального движка. Это делает его предпочтительным выбором для серверов, ориентированных на защиту от эксплойтов и потенциальных атак. + +2. **Оптимизация производительности** + ReHLDS содержит различные оптимизации, которые улучшают производительность серверов и снижают нагрузку на оборудование, обеспечивая большую стабильность даже при большом количестве игроков. + +3. **Расширенные лимиты** + В ReHLDS увеличены ограничения сервера, что обеспечивает большую гибкость и производительность, превышающую возможности оригинального HLDS. + +4. **Расширенные возможности моддинга** + ReHLDS предоставляет широкий набор инструментов и улучшений для разработчиков, желающих создавать собственные плагины или модификации. Дополнительные улучшения делают моддинг и интеграцию пользовательского контента более гибкими и эффективными. + +5. **Совместимость и стабильность** + Несмотря на множество улучшений, ReHLDS сохраняет полную совместимость с оригинальным HLDS, поддерживая все существующие моды и плагины, включая AMX Mod X и Metamod. Это гарантирует бесшовную миграцию для существующих проектов и плагинов без необходимости значительных изменений. + +## Интеграция с ReHLTV + +ReHLDS поставляется вместе с движком ReHLTV, который предлагает свои собственные улучшения, исправления и увеличенные лимиты для Half-Life Television (HLTV). ReHLTV создан для дополнения ReHLDS, обеспечивая оптимизированное и улучшенное решение для записи и трансляции игровых сессий. + +## История и сообщество + +ReHLDS был создан для устранения давних проблем и ограничений оригинального HLDS, которые оставались нерешёнными годами. С момента своего запуска ReHLDS значительно эволюционировал благодаря некоммерческому сообществу увлечённых разработчиков, которые продолжают улучшать, расширять и поддерживать проект. Сообщество ReHLDS сосредоточено на создании качественного опыта как для игроков, так и для администраторов серверов, постоянно развивая возможности движка. + +ReHLDS не только сохраняет дух оригинального HLDS, но и предоставляет мощное решение для тех, кто ищет гибкость, стабильность и безопасность при управлении игровыми серверами. diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/core-projects/_category_.json b/i18n/ru/docusaurus-plugin-content-docs/current/core-projects/_category_.json new file mode 100644 index 0000000..8aaa557 --- /dev/null +++ b/i18n/ru/docusaurus-plugin-content-docs/current/core-projects/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Основные проекты", + "position": 2, + "link": { + "type": "generated-index", + "description": "Основные проекты организации ReHLDS, о которых вы можете узнать подробнее." + } +} diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/intro.md b/i18n/ru/docusaurus-plugin-content-docs/current/intro.md new file mode 100644 index 0000000..bb54e79 --- /dev/null +++ b/i18n/ru/docusaurus-plugin-content-docs/current/intro.md @@ -0,0 +1,37 @@ +--- +id: intro +sidebar_position: 1 +title: Введение +description: Обзор экосистемы проекта ReHLDS, включая ReHLDS, Metamod-r и ReGameDLL_CS, предназначенной для улучшения работы серверов Half-Life Dedicated Server. +slug: / +--- + +# Добро пожаловать в документацию ReHLDS + +Проект ReHLDS представляет собой коллекцию переработанных и оптимизированных компонентов, разработанных для улучшения работы серверов Half-Life Dedicated Server (HLDS), особенно для таких игр, как Counter-Strike 1.6 и других, основанных на HLDS. Эти проекты предлагают улучшения производительности, безопасности, возможностей настройки и расширяемости, предоставляя более современную и надёжную платформу для игровых серверов. + +## Что входит в экосистему ReHLDS + +Наша организация поддерживает несколько ключевых проектов, которые могут работать как вместе, так и по отдельности, улучшая стабильность, гибкость и функциональность серверов. + +### ReHLDS + +ReHLDS — это переработанная версия оригинального движка HLDS, направленная на обеспечение более безопасной, эффективной и настраиваемой работы серверов. Основанный на оригинальной сборке HLDS 6153, ReHLDS предлагает множество оптимизаций производительности, расширенные параметры конфигурации и улучшенную обработку сети. + +### Metamod-r + +Metamod-r — это оптимизированная версия оригинального Metamod, работающая как динамический менеджер плагинов между движком HLDS и игровыми модами. Он позволяет загружать и выгружать плагины без перезапуска сервера, делая настройку серверов более гибкой. Metamod-r разработан для работы как с HLDS, так и с ReHLDS, предоставляя улучшенное ядро с повышенной производительностью и компилятором Just-In-Time (JIT). + +### ReGameDLL_CS + +ReGameDLL_CS — это переработанная версия GameDLL для Counter-Strike, предоставляющая администраторам серверов и моддерам улучшенную, стабильную основу для работы серверов Counter-Strike 1.6 и Condition Zero. Она предлагает расширенные API, дополнительные игровые настройки и повышенную безопасность, позволяя реализовывать продвинутые модификации и улучшенный контроль над параметрами сервера. + +## Почему стоит выбрать проекты ReHLDS? + +Пакет ReHLDS предназначен для администраторов серверов, моддеров и разработчиков, которые хотят больше контроля, улучшенную стабильность и продвинутые возможности настройки для своих серверов на основе HLDS. С регулярными обновлениями и вкладом преданных разработчиков компоненты ReHLDS надёжны, совместимы и идеально подходят для поддержания высокопроизводительных серверов, соответствующих современным требованиям игровой индустрии. + +## Начало работы + +Каждый проект имеет свою документацию, чтобы помочь вам установить, настроить и максимально использовать предлагаемые возможности. Чтобы начать изучение, выберите проект в навигационном меню или посетите наш [репозиторий на GitHub](https://github.com/ReHLDS) для последних релизов и обновлений. + +Окунитесь в мир возможностей ReHLDS и создавайте серверы следующего поколения на базе Half-Life! diff --git a/i18n/ru/docusaurus-theme-classic/footer.json b/i18n/ru/docusaurus-theme-classic/footer.json new file mode 100644 index 0000000..ded1ec9 --- /dev/null +++ b/i18n/ru/docusaurus-theme-classic/footer.json @@ -0,0 +1,34 @@ +{ + "link.title.Docs": { + "message": "Документация", + "description": "The title of the footer links column with title=Docs in the footer" + }, + "link.title.Community": { + "message": "Сообщество", + "description": "The title of the footer links column with title=Community in the footer" + }, + "link.title.More": { + "message": "Ещё", + "description": "The title of the footer links column with title=More in the footer" + }, + "link.item.label.Tutorial": { + "message": "Руководство", + "description": "The label of footer link with label=Tutorial linking to /docs/" + }, + "link.item.label.Telegram": { + "message": "Telegram", + "description": "The label of footer link with label=Telegram linking to https://t.me/ReHLDS_Community" + }, + "link.item.label.Blog": { + "message": "Блог", + "description": "The label of footer link with label=Blog linking to /blog" + }, + "link.item.label.GitHub ": { + "message": "GitHub ", + "description": "The label of footer link with label=GitHub linking to https://github.com/rehlds" + }, + "copyright": { + "message": "Авторские права © 2024 ReHLDS. Создано с помощью Docusaurus.", + "description": "The footer copyright" + } +} diff --git a/i18n/ru/docusaurus-theme-classic/navbar.json b/i18n/ru/docusaurus-theme-classic/navbar.json new file mode 100644 index 0000000..15b1370 --- /dev/null +++ b/i18n/ru/docusaurus-theme-classic/navbar.json @@ -0,0 +1,22 @@ +{ + "title": { + "message": "ReHLDS Документация", + "description": "The title in the navbar" + }, + "logo.alt": { + "message": "ReHLDS Логотип", + "description": "The alt text of navbar logo" + }, + "item.label.Tutorial": { + "message": "Учебник", + "description": "Navbar item with label Tutorial" + }, + "item.label.Blog": { + "message": "Блог", + "description": "Navbar item with label Blog" + }, + "item.label.GitHub": { + "message": "GitHub", + "description": "Navbar item with label GitHub" + } +}