mirror of
https://github.com/siteboon/claudecodeui.git
synced 2026-03-12 09:27:22 +00:00
feat: add full Russian language support; update Readme.md files, and .gitignore update (#514)
* feat: add Russian locale
- Add ru translations and register namespaces
- Add Russian to supported languages list
- Ignore .gemini workspace config
* fix: improve Russian plural forms in sidebar translations
Add proper Russian plural forms (few/many) for correct grammar with different count values
* docs(readme): add Russian translation and fix language switcher order
- Create README.ru.md based on the current English README.
- Update language switchers in all localized README files so
English comes first, Russian second, and the remaining
languages follow.
- Fix the issue where the current language was not shown
correctly in the switcher for some localized README files
* fix(readme): fix language switcher positions and markdown issues
- Fix language switcher positions in README.md.
- Add bash language tags to command code blocks in README.ru.md.
* fix(readme): fix tool setup step numbering
- Fix tool setup step numbering in README.md and localized README files.
* fix(gitignore): allow translation task files to be tracked
Add exceptions to .gitignore for task translation files across multiple locales
(en, ja, ru, ko, zh-CN) to enable version control of translated content while
keeping generated task files ignored.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
* feat(i18n): add Russian translation for tasks
Add Russian locale translation file for TaskMaster task management interface.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
* fix: ignore missing tasks.json files for ko and zh-cn locales
* Delete .worktrees directory
---------
Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -49,6 +49,15 @@ import jaCodeEditor from './locales/ja/codeEditor.json';
|
||||
// eslint-disable-next-line import-x/order
|
||||
import jaTasks from './locales/ja/tasks.json';
|
||||
|
||||
import ruCommon from './locales/ru/common.json';
|
||||
import ruSettings from './locales/ru/settings.json';
|
||||
import ruAuth from './locales/ru/auth.json';
|
||||
import ruSidebar from './locales/ru/sidebar.json';
|
||||
import ruChat from './locales/ru/chat.json';
|
||||
import ruCodeEditor from './locales/ru/codeEditor.json';
|
||||
// eslint-disable-next-line import-x/order
|
||||
import ruTasks from './locales/ru/tasks.json';
|
||||
|
||||
// Import supported languages configuration
|
||||
import { languages } from './languages.js';
|
||||
|
||||
@@ -107,6 +116,15 @@ i18n
|
||||
codeEditor: jaCodeEditor,
|
||||
tasks: jaTasks,
|
||||
},
|
||||
ru: {
|
||||
common: ruCommon,
|
||||
settings: ruSettings,
|
||||
auth: ruAuth,
|
||||
sidebar: ruSidebar,
|
||||
chat: ruChat,
|
||||
codeEditor: ruCodeEditor,
|
||||
tasks: ruTasks,
|
||||
},
|
||||
},
|
||||
|
||||
// Default language
|
||||
|
||||
@@ -29,6 +29,11 @@ export const languages = [
|
||||
label: 'Japanese',
|
||||
nativeName: '日本語',
|
||||
},
|
||||
{
|
||||
value: 'ru',
|
||||
label: 'Russian',
|
||||
nativeName: 'Русский',
|
||||
},
|
||||
];
|
||||
|
||||
/**
|
||||
|
||||
37
src/i18n/locales/ru/auth.json
Normal file
37
src/i18n/locales/ru/auth.json
Normal file
@@ -0,0 +1,37 @@
|
||||
{
|
||||
"login": {
|
||||
"title": "Добро пожаловать",
|
||||
"description": "Войдите в свой аккаунт Claude Code UI",
|
||||
"username": "Имя пользователя",
|
||||
"password": "Пароль",
|
||||
"submit": "Войти",
|
||||
"loading": "Вход...",
|
||||
"errors": {
|
||||
"invalidCredentials": "Неверное имя пользователя или пароль",
|
||||
"requiredFields": "Пожалуйста, заполните все поля",
|
||||
"networkError": "Ошибка сети. Попробуйте снова."
|
||||
},
|
||||
"placeholders": {
|
||||
"username": "Введите имя пользователя",
|
||||
"password": "Введите пароль"
|
||||
}
|
||||
},
|
||||
"register": {
|
||||
"title": "Создать аккаунт",
|
||||
"username": "Имя пользователя",
|
||||
"password": "Пароль",
|
||||
"confirmPassword": "Подтвердите пароль",
|
||||
"submit": "Создать аккаунт",
|
||||
"loading": "Создание аккаунта...",
|
||||
"errors": {
|
||||
"passwordMismatch": "Пароли не совпадают",
|
||||
"usernameTaken": "Имя пользователя уже занято",
|
||||
"weakPassword": "Пароль слишком слабый"
|
||||
}
|
||||
},
|
||||
"logout": {
|
||||
"title": "Выйти",
|
||||
"confirm": "Вы уверены, что хотите выйти?",
|
||||
"button": "Выйти"
|
||||
}
|
||||
}
|
||||
269
src/i18n/locales/ru/chat.json
Normal file
269
src/i18n/locales/ru/chat.json
Normal file
@@ -0,0 +1,269 @@
|
||||
{
|
||||
"codeBlock": {
|
||||
"copy": "Копировать",
|
||||
"copied": "Скопировано",
|
||||
"copyCode": "Копировать код"
|
||||
},
|
||||
"copyMessage": {
|
||||
"copy": "Копировать сообщение",
|
||||
"copied": "Сообщение скопировано"
|
||||
},
|
||||
"messageTypes": {
|
||||
"user": "П",
|
||||
"error": "Ошибка",
|
||||
"tool": "Инструмент",
|
||||
"claude": "Claude",
|
||||
"cursor": "Cursor",
|
||||
"codex": "Codex",
|
||||
"gemini": "Gemini"
|
||||
},
|
||||
"tools": {
|
||||
"settings": "Настройки инструмента",
|
||||
"error": "Ошибка инструмента",
|
||||
"result": "Результат инструмента",
|
||||
"viewParams": "Просмотр входных параметров",
|
||||
"viewRawParams": "Просмотр сырых параметров",
|
||||
"viewDiff": "Просмотр различий редактирования для",
|
||||
"creatingFile": "Создание нового файла:",
|
||||
"updatingTodo": "Обновление списка задач",
|
||||
"read": "Чтение",
|
||||
"readFile": "Чтение файла",
|
||||
"updateTodo": "Обновить список задач",
|
||||
"readTodo": "Прочитать список задач",
|
||||
"searchResults": "результаты"
|
||||
},
|
||||
"search": {
|
||||
"found": "Найдено {{count}} {{type}}",
|
||||
"file": "файл",
|
||||
"files": "файлов",
|
||||
"pattern": "шаблон:",
|
||||
"in": "в:"
|
||||
},
|
||||
"fileOperations": {
|
||||
"updated": "Файл успешно обновлен",
|
||||
"created": "Файл успешно создан",
|
||||
"written": "Файл успешно записан",
|
||||
"diff": "Различия",
|
||||
"newFile": "Новый файл",
|
||||
"viewContent": "Просмотр содержимого файла",
|
||||
"viewFullOutput": "Просмотр полного вывода ({{count}} символов)",
|
||||
"contentDisplayed": "Содержимое файла отображено в представлении различий выше"
|
||||
},
|
||||
"interactive": {
|
||||
"title": "Интерактивный запрос",
|
||||
"waiting": "Ожидание вашего ответа в CLI",
|
||||
"instruction": "Пожалуйста, выберите опцию в терминале, где запущен Claude.",
|
||||
"selectedOption": "✓ Claude выбрал опцию {{number}}",
|
||||
"instructionDetail": "В CLI вы бы выбрали эту опцию интерактивно, используя клавиши со стрелками или введя номер."
|
||||
},
|
||||
"thinking": {
|
||||
"title": "Думаю...",
|
||||
"emoji": "💭 Думаю..."
|
||||
},
|
||||
"json": {
|
||||
"response": "JSON ответ"
|
||||
},
|
||||
"permissions": {
|
||||
"grant": "Предоставить разрешение для {{tool}}",
|
||||
"added": "Разрешение добавлено",
|
||||
"addTo": "Добавляет {{entry}} в разрешенные инструменты.",
|
||||
"retry": "Разрешение сохранено. Повторите запрос для использования инструмента.",
|
||||
"error": "Не удалось обновить разрешения. Попробуйте снова.",
|
||||
"openSettings": "Открыть настройки"
|
||||
},
|
||||
"todo": {
|
||||
"updated": "Список задач успешно обновлен",
|
||||
"current": "Текущий список задач"
|
||||
},
|
||||
"plan": {
|
||||
"viewPlan": "📋 Просмотр плана реализации",
|
||||
"title": "План реализации"
|
||||
},
|
||||
"usageLimit": {
|
||||
"resetAt": "Достигнут лимит использования Claude. Ваш лимит будет сброшен в **{{time}} {{timezone}}** - {{date}}"
|
||||
},
|
||||
"codex": {
|
||||
"permissionMode": "Режим разрешений",
|
||||
"modes": {
|
||||
"default": "Режим по умолчанию",
|
||||
"acceptEdits": "Принимать правки",
|
||||
"bypassPermissions": "Обход разрешений",
|
||||
"plan": "Режим планирования"
|
||||
},
|
||||
"descriptions": {
|
||||
"default": "Только доверенные команды (ls, cat, grep, git status и т.д.) выполняются автоматически. Другие команды пропускаются. Может записывать в рабочее пространство.",
|
||||
"acceptEdits": "Все команды выполняются автоматически в рабочем пространстве. Полный автоматический режим с изолированным выполнением.",
|
||||
"bypassPermissions": "Полный системный доступ без ограничений. Все команды выполняются автоматически с полным доступом к диску и сети. Используйте с осторожностью.",
|
||||
"plan": "Режим планирования - команды не выполняются"
|
||||
},
|
||||
"technicalDetails": "Технические детали"
|
||||
},
|
||||
"gemini": {
|
||||
"permissionMode": "Режим разрешений Gemini",
|
||||
"description": "Управление тем, как Gemini CLI обрабатывает подтверждения операций.",
|
||||
"modes": {
|
||||
"default": {
|
||||
"title": "Стандартный (запрашивать подтверждение)",
|
||||
"description": "Gemini будет запрашивать подтверждение перед выполнением команд, записью файлов и получением веб-ресурсов."
|
||||
},
|
||||
"autoEdit": {
|
||||
"title": "Автоматическое редактирование (пропускать подтверждения файлов)",
|
||||
"description": "Gemini будет автоматически подтверждать редактирование файлов и веб-запросы, но все еще будет запрашивать подтверждение для команд оболочки."
|
||||
},
|
||||
"yolo": {
|
||||
"title": "YOLO (обход всех разрешений)",
|
||||
"description": "Gemini будет выполнять все операции без запроса подтверждения. Будьте осторожны."
|
||||
}
|
||||
}
|
||||
},
|
||||
"input": {
|
||||
"placeholder": "Введите / для команд, @ для файлов, или спросите {{provider}} что угодно...",
|
||||
"placeholderDefault": "Введите ваше сообщение...",
|
||||
"disabled": "Ввод отключен",
|
||||
"attachFiles": "Прикрепить файлы",
|
||||
"attachImages": "Прикрепить изображения",
|
||||
"send": "Отправить",
|
||||
"stop": "Остановить",
|
||||
"hintText": {
|
||||
"ctrlEnter": "Ctrl+Enter для отправки • Shift+Enter для новой строки • Tab для смены режима • / для команд",
|
||||
"enter": "Enter для отправки • Shift+Enter для новой строки • Tab для смены режима • / для команд"
|
||||
},
|
||||
"clickToChangeMode": "Нажмите для смены режима разрешений (или нажмите Tab в поле ввода)",
|
||||
"showAllCommands": "Показать все команды",
|
||||
"clearInput": "Очистить ввод",
|
||||
"scrollToBottom": "Прокрутить вниз"
|
||||
},
|
||||
"thinkingMode": {
|
||||
"selector": {
|
||||
"title": "Режим размышления",
|
||||
"description": "Расширенное размышление дает Claude больше времени для оценки альтернатив",
|
||||
"active": "Активен",
|
||||
"tip": "Более высокие режимы размышления занимают больше времени, но обеспечивают более тщательный анализ"
|
||||
},
|
||||
"modes": {
|
||||
"none": {
|
||||
"name": "Стандартный",
|
||||
"description": "Обычный ответ Claude",
|
||||
"prefix": ""
|
||||
},
|
||||
"think": {
|
||||
"name": "Думать",
|
||||
"description": "Базовое расширенное размышление",
|
||||
"prefix": "думать"
|
||||
},
|
||||
"thinkHard": {
|
||||
"name": "Думать усердно",
|
||||
"description": "Более тщательная оценка",
|
||||
"prefix": "думать усердно"
|
||||
},
|
||||
"thinkHarder": {
|
||||
"name": "Думать еще усерднее",
|
||||
"description": "Глубокий анализ с альтернативами",
|
||||
"prefix": "думать еще усерднее"
|
||||
},
|
||||
"ultrathink": {
|
||||
"name": "Ультра-размышление",
|
||||
"description": "Максимальный бюджет размышления",
|
||||
"prefix": "ультра-размышление"
|
||||
}
|
||||
},
|
||||
"buttonTitle": "Режим размышления: {{mode}}"
|
||||
},
|
||||
"providerSelection": {
|
||||
"title": "Выберите вашего AI-ассистента",
|
||||
"description": "Выберите провайдера для начала нового разговора",
|
||||
"selectModel": "Выбрать модель",
|
||||
"providerInfo": {
|
||||
"anthropic": "от Anthropic",
|
||||
"openai": "от OpenAI",
|
||||
"cursorEditor": "AI редактор кода",
|
||||
"google": "от Google"
|
||||
},
|
||||
"readyPrompt": {
|
||||
"claude": "Готов использовать Claude с {{model}}. Начните вводить сообщение ниже.",
|
||||
"cursor": "Готов использовать Cursor с {{model}}. Начните вводить сообщение ниже.",
|
||||
"codex": "Готов использовать Codex с {{model}}. Начните вводить сообщение ниже.",
|
||||
"gemini": "Готов использовать Gemini с {{model}}. Начните вводить сообщение ниже.",
|
||||
"default": "Выберите провайдера выше для начала"
|
||||
}
|
||||
},
|
||||
"session": {
|
||||
"continue": {
|
||||
"title": "Продолжить разговор",
|
||||
"description": "Задавайте вопросы о вашем коде, запрашивайте изменения или получайте помощь с задачами разработки"
|
||||
},
|
||||
"loading": {
|
||||
"olderMessages": "Загрузка старых сообщений...",
|
||||
"sessionMessages": "Загрузка сообщений сеанса..."
|
||||
},
|
||||
"messages": {
|
||||
"showingOf": "Показано {{shown}} из {{total}} сообщений",
|
||||
"scrollToLoad": "Прокрутите вверх для загрузки еще",
|
||||
"showingLast": "Показаны последние {{count}} сообщений (всего {{total}})",
|
||||
"loadEarlier": "Загрузить более ранние сообщения",
|
||||
"loadAll": "Загрузить все сообщения",
|
||||
"loadingAll": "Загрузка всех сообщений...",
|
||||
"allLoaded": "Все сообщения загружены",
|
||||
"perfWarning": "Все сообщения загружены — прокрутка может быть медленнее. Нажмите \"Прокрутить вниз\" для восстановления производительности."
|
||||
}
|
||||
},
|
||||
"shell": {
|
||||
"selectProject": {
|
||||
"title": "Выберите проект",
|
||||
"description": "Выберите проект для открытия интерактивной оболочки в этом каталоге"
|
||||
},
|
||||
"status": {
|
||||
"newSession": "Новый сеанс",
|
||||
"initializing": "Инициализация...",
|
||||
"restarting": "Перезапуск..."
|
||||
},
|
||||
"actions": {
|
||||
"disconnect": "Отключиться",
|
||||
"disconnectTitle": "Отключиться от оболочки",
|
||||
"restart": "Перезапустить",
|
||||
"restartTitle": "Перезапустить оболочку (сначала отключитесь)",
|
||||
"connect": "Продолжить в оболочке",
|
||||
"connectTitle": "Подключиться к оболочке"
|
||||
},
|
||||
"loading": "Загрузка терминала...",
|
||||
"connecting": "Подключение к оболочке...",
|
||||
"startSession": "Начать новый сеанс Claude",
|
||||
"resumeSession": "Возобновить сеанс: {{displayName}}...",
|
||||
"runCommand": "Выполнить {{command}} в {{projectName}}",
|
||||
"startCli": "Запуск Claude CLI в {{projectName}}",
|
||||
"defaultCommand": "команда"
|
||||
},
|
||||
"claudeStatus": {
|
||||
"actions": {
|
||||
"thinking": "Думает",
|
||||
"processing": "Обрабатывает",
|
||||
"analyzing": "Анализирует",
|
||||
"working": "Работает",
|
||||
"computing": "Вычисляет",
|
||||
"reasoning": "Рассуждает"
|
||||
},
|
||||
"state": {
|
||||
"live": "В сети",
|
||||
"paused": "Приостановлен"
|
||||
},
|
||||
"elapsed": {
|
||||
"seconds": "{{count}}с",
|
||||
"minutesSeconds": "{{minutes}}м {{seconds}}с",
|
||||
"label": "Прошло {{time}}",
|
||||
"startingNow": "Начинается сейчас"
|
||||
},
|
||||
"controls": {
|
||||
"stopGeneration": "Остановить генерацию",
|
||||
"pressEscToStop": "Нажмите Esc в любое время для остановки"
|
||||
},
|
||||
"providers": {
|
||||
"assistant": "Ассистент"
|
||||
}
|
||||
},
|
||||
"projectSelection": {
|
||||
"startChatWithProvider": "Выберите проект для начала чата с {{provider}}"
|
||||
},
|
||||
"tasks": {
|
||||
"nextTaskPrompt": "Начать следующую задачу"
|
||||
}
|
||||
}
|
||||
36
src/i18n/locales/ru/codeEditor.json
Normal file
36
src/i18n/locales/ru/codeEditor.json
Normal file
@@ -0,0 +1,36 @@
|
||||
{
|
||||
"toolbar": {
|
||||
"changes": "изменения",
|
||||
"previousChange": "Предыдущее изменение",
|
||||
"nextChange": "Следующее изменение",
|
||||
"hideDiff": "Скрыть подсветку различий",
|
||||
"showDiff": "Показать подсветку различий",
|
||||
"settings": "Настройки редактора",
|
||||
"collapse": "Свернуть редактор",
|
||||
"expand": "Развернуть редактор на всю ширину"
|
||||
},
|
||||
"loading": "Загрузка {{fileName}}...",
|
||||
"header": {
|
||||
"showingChanges": "Показаны изменения"
|
||||
},
|
||||
"actions": {
|
||||
"download": "Скачать файл",
|
||||
"save": "Сохранить",
|
||||
"saving": "Сохранение...",
|
||||
"saved": "Сохранено!",
|
||||
"exitFullscreen": "Выйти из полноэкранного режима",
|
||||
"fullscreen": "Полноэкранный режим",
|
||||
"close": "Закрыть",
|
||||
"previewMarkdown": "Предпросмотр markdown",
|
||||
"editMarkdown": "Редактировать markdown"
|
||||
},
|
||||
"footer": {
|
||||
"lines": "Строк:",
|
||||
"characters": "Символов:",
|
||||
"shortcuts": "Нажмите Ctrl+S для сохранения • Esc для закрытия"
|
||||
},
|
||||
"binaryFile": {
|
||||
"title": "Бинарный файл",
|
||||
"message": "Файл \"{{fileName}}\" не может быть отображен в текстовом редакторе, так как это бинарный файл."
|
||||
}
|
||||
}
|
||||
238
src/i18n/locales/ru/common.json
Normal file
238
src/i18n/locales/ru/common.json
Normal file
@@ -0,0 +1,238 @@
|
||||
{
|
||||
"buttons": {
|
||||
"save": "Сохранить",
|
||||
"cancel": "Отмена",
|
||||
"delete": "Удалить",
|
||||
"create": "Создать",
|
||||
"edit": "Редактировать",
|
||||
"close": "Закрыть",
|
||||
"confirm": "Подтвердить",
|
||||
"submit": "Отправить",
|
||||
"retry": "Повторить",
|
||||
"refresh": "Обновить",
|
||||
"search": "Поиск",
|
||||
"clear": "Очистить",
|
||||
"copy": "Копировать",
|
||||
"download": "Скачать",
|
||||
"upload": "Загрузить",
|
||||
"browse": "Обзор"
|
||||
},
|
||||
"tabs": {
|
||||
"chat": "Чат",
|
||||
"shell": "Терминал",
|
||||
"files": "Файлы",
|
||||
"git": "Система контроля версий",
|
||||
"tasks": "Задачи"
|
||||
},
|
||||
"status": {
|
||||
"loading": "Загрузка...",
|
||||
"success": "Успешно",
|
||||
"error": "Ошибка",
|
||||
"failed": "Не удалось",
|
||||
"pending": "Ожидание",
|
||||
"completed": "Завершено",
|
||||
"inProgress": "В процессе"
|
||||
},
|
||||
"messages": {
|
||||
"savedSuccessfully": "Успешно сохранено",
|
||||
"deletedSuccessfully": "Успешно удалено",
|
||||
"updatedSuccessfully": "Успешно обновлено",
|
||||
"operationFailed": "Операция не удалась",
|
||||
"networkError": "Ошибка сети. Проверьте подключение.",
|
||||
"unauthorized": "Не авторизован. Пожалуйста, войдите.",
|
||||
"notFound": "Не найдено",
|
||||
"invalidInput": "Неверный ввод",
|
||||
"requiredField": "Это поле обязательно",
|
||||
"unknownError": "Произошла неизвестная ошибка"
|
||||
},
|
||||
"navigation": {
|
||||
"settings": "Настройки",
|
||||
"home": "Главная",
|
||||
"back": "Назад",
|
||||
"next": "Далее",
|
||||
"previous": "Предыдущий",
|
||||
"logout": "Выйти"
|
||||
},
|
||||
"common": {
|
||||
"language": "Язык",
|
||||
"theme": "Тема",
|
||||
"darkMode": "Темная тема",
|
||||
"lightMode": "Светлая тема",
|
||||
"name": "Имя",
|
||||
"description": "Описание",
|
||||
"enabled": "Включено",
|
||||
"disabled": "Отключено",
|
||||
"optional": "Необязательно",
|
||||
"version": "Версия",
|
||||
"select": "Выбрать",
|
||||
"selectAll": "Выбрать все",
|
||||
"deselectAll": "Снять выделение"
|
||||
},
|
||||
"time": {
|
||||
"justNow": "Только что",
|
||||
"minutesAgo": "{{count}} мин. назад",
|
||||
"hoursAgo": "{{count}} ч. назад",
|
||||
"daysAgo": "{{count}} дн. назад",
|
||||
"yesterday": "Вчера"
|
||||
},
|
||||
"fileOperations": {
|
||||
"newFile": "Новый файл",
|
||||
"newFolder": "Новая папка",
|
||||
"rename": "Переименовать",
|
||||
"move": "Переместить",
|
||||
"copyPath": "Копировать путь",
|
||||
"openInEditor": "Открыть в редакторе"
|
||||
},
|
||||
"mainContent": {
|
||||
"loading": "Загрузка Claude Code UI",
|
||||
"settingUpWorkspace": "Настройка рабочего пространства...",
|
||||
"chooseProject": "Выберите проект",
|
||||
"selectProjectDescription": "Выберите проект на боковой панели, чтобы начать работу с Claude. Каждый проект содержит ваши сеансы чата и историю файлов.",
|
||||
"tip": "Совет",
|
||||
"createProjectMobile": "Нажмите кнопку меню выше для доступа к проектам",
|
||||
"createProjectDesktop": "Создайте новый проект, нажав на значок папки на боковой панели",
|
||||
"newSession": "Новый сеанс",
|
||||
"untitledSession": "Безымянный сеанс",
|
||||
"projectFiles": "Файлы проекта"
|
||||
},
|
||||
"fileTree": {
|
||||
"loading": "Загрузка файлов...",
|
||||
"files": "Файлы",
|
||||
"simpleView": "Простой вид",
|
||||
"compactView": "Компактный вид",
|
||||
"detailedView": "Подробный вид",
|
||||
"searchPlaceholder": "Поиск файлов и папок...",
|
||||
"clearSearch": "Очистить поиск",
|
||||
"name": "Имя",
|
||||
"size": "Размер",
|
||||
"modified": "Изменено",
|
||||
"permissions": "Права доступа",
|
||||
"noFilesFound": "Файлы не найдены",
|
||||
"checkProjectPath": "Проверьте доступность пути к проекту",
|
||||
"noMatchesFound": "Совпадений не найдено",
|
||||
"tryDifferentSearch": "Попробуйте другой поисковый запрос или очистите поиск",
|
||||
"justNow": "только что",
|
||||
"minAgo": "{{count}} мин. назад",
|
||||
"hoursAgo": "{{count}} ч. назад",
|
||||
"daysAgo": "{{count}} дн. назад",
|
||||
"newFile": "Новый файл (Cmd+N)",
|
||||
"newFolder": "Новая папка (Cmd+Shift+N)",
|
||||
"refresh": "Обновить",
|
||||
"collapseAll": "Свернуть все",
|
||||
"context": {
|
||||
"rename": "Переименовать",
|
||||
"delete": "Удалить",
|
||||
"copyPath": "Копировать путь",
|
||||
"download": "Скачать",
|
||||
"newFile": "Новый файл",
|
||||
"newFolder": "Новая папка",
|
||||
"refresh": "Обновить",
|
||||
"menuLabel": "Контекстное меню файла",
|
||||
"loading": "Загрузка..."
|
||||
}
|
||||
},
|
||||
"projectWizard": {
|
||||
"title": "Создать новый проект",
|
||||
"steps": {
|
||||
"type": "Тип",
|
||||
"configure": "Настройка",
|
||||
"confirm": "Подтверждение"
|
||||
},
|
||||
"step1": {
|
||||
"question": "У вас уже есть рабочее пространство или вы хотите создать новое?",
|
||||
"existing": {
|
||||
"title": "Существующее рабочее пространство",
|
||||
"description": "У меня уже есть рабочее пространство на сервере, нужно только добавить его в список проектов"
|
||||
},
|
||||
"new": {
|
||||
"title": "Новое рабочее пространство",
|
||||
"description": "Создать новое рабочее пространство, опционально клонировать из репозитория GitHub"
|
||||
}
|
||||
},
|
||||
"step2": {
|
||||
"existingPath": "Путь к рабочему пространству",
|
||||
"newPath": "Путь к рабочему пространству",
|
||||
"existingPlaceholder": "/путь/к/существующему/пространству",
|
||||
"newPlaceholder": "/путь/к/новому/пространству",
|
||||
"existingHelp": "Полный путь к каталогу вашего рабочего пространства",
|
||||
"newHelp": "Полный путь к каталогу вашего рабочего пространства",
|
||||
"githubUrl": "URL GitHub (необязательно)",
|
||||
"githubPlaceholder": "https://github.com/username/repository",
|
||||
"githubHelp": "Необязательно: укажите URL GitHub для клонирования репозитория",
|
||||
"githubAuth": "Аутентификация GitHub (необязательно)",
|
||||
"githubAuthHelp": "Требуется только для приватных репозиториев. Публичные репозитории можно клонировать без аутентификации.",
|
||||
"loadingTokens": "Загрузка сохраненных токенов...",
|
||||
"storedToken": "Сохраненный токен",
|
||||
"newToken": "Новый токен",
|
||||
"nonePublic": "Нет (публичный)",
|
||||
"selectToken": "Выбрать токен",
|
||||
"selectTokenPlaceholder": "-- Выберите токен --",
|
||||
"tokenPlaceholder": "ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
|
||||
"tokenHelp": "Этот токен будет использован только для этой операции",
|
||||
"publicRepoInfo": "Публичные репозитории не требуют аутентификации. Вы можете пропустить токен при клонировании публичного репозитория.",
|
||||
"noTokensHelp": "Нет доступных сохраненных токенов. Вы можете добавить токены в Настройки → API ключи для удобного повторного использования.",
|
||||
"optionalTokenPublic": "Токен GitHub (необязательно для публичных репозиториев)",
|
||||
"tokenPublicPlaceholder": "ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (оставьте пустым для публичных репозиториев)"
|
||||
},
|
||||
"step3": {
|
||||
"reviewConfig": "Проверьте вашу конфигурацию",
|
||||
"workspaceType": "Тип рабочего пространства:",
|
||||
"existingWorkspace": "Существующее рабочее пространство",
|
||||
"newWorkspace": "Новое рабочее пространство",
|
||||
"path": "Путь:",
|
||||
"cloneFrom": "Клонировать из:",
|
||||
"authentication": "Аутентификация:",
|
||||
"usingStoredToken": "Использование сохраненного токена:",
|
||||
"usingProvidedToken": "Использование предоставленного токена",
|
||||
"noAuthentication": "Без аутентификации",
|
||||
"sshKey": "SSH ключ",
|
||||
"existingInfo": "Рабочее пространство будет добавлено в список проектов и будет доступно для сеансов Claude/Cursor.",
|
||||
"newWithClone": "Репозиторий будет клонирован в эту папку.",
|
||||
"newEmpty": "Рабочее пространство будет добавлено в список проектов и будет доступно для сеансов Claude/Cursor.",
|
||||
"cloningRepository": "Клонирование репозитория..."
|
||||
},
|
||||
"buttons": {
|
||||
"cancel": "Отмена",
|
||||
"back": "Назад",
|
||||
"next": "Далее",
|
||||
"createProject": "Создать проект",
|
||||
"creating": "Создание...",
|
||||
"cloning": "Клонирование..."
|
||||
},
|
||||
"errors": {
|
||||
"selectType": "Пожалуйста, выберите, есть ли у вас существующее рабочее пространство или вы хотите создать новое",
|
||||
"providePath": "Пожалуйста, укажите путь к рабочему пространству",
|
||||
"failedToCreate": "Не удалось создать рабочее пространство",
|
||||
"failedToCreateFolder": "Не удалось создать папку"
|
||||
}
|
||||
},
|
||||
"versionUpdate": {
|
||||
"title": "Доступно обновление",
|
||||
"newVersionReady": "Новая версия готова",
|
||||
"currentVersion": "Текущая версия",
|
||||
"latestVersion": "Последняя версия",
|
||||
"whatsNew": "Что нового:",
|
||||
"viewFullRelease": "Посмотреть полный релиз",
|
||||
"updateProgress": "Прогресс обновления:",
|
||||
"manualUpgrade": "Ручное обновление:",
|
||||
"npmUpgradeCommand": "npm install -g @siteboon/claude-code-ui@latest",
|
||||
"manualUpgradeHint": "Или нажмите \"Обновить сейчас\" для автоматического обновления.",
|
||||
"updateCompleted": "Обновление успешно завершено!",
|
||||
"restartServer": "Пожалуйста, перезапустите сервер для применения изменений.",
|
||||
"updateFailed": "Обновление не удалось",
|
||||
"buttons": {
|
||||
"close": "Закрыть",
|
||||
"later": "Позже",
|
||||
"copyCommand": "Копировать команду",
|
||||
"updateNow": "Обновить сейчас",
|
||||
"updating": "Обновление..."
|
||||
},
|
||||
"ariaLabels": {
|
||||
"closeModal": "Закрыть модальное окно обновления версии",
|
||||
"showSidebar": "Показать боковую панель",
|
||||
"settings": "Настройки",
|
||||
"updateAvailable": "Доступно обновление",
|
||||
"closeSidebar": "Закрыть боковую панель"
|
||||
}
|
||||
}
|
||||
}
|
||||
434
src/i18n/locales/ru/settings.json
Normal file
434
src/i18n/locales/ru/settings.json
Normal file
@@ -0,0 +1,434 @@
|
||||
{
|
||||
"title": "Настройки",
|
||||
"tabs": {
|
||||
"account": "Аккаунт",
|
||||
"permissions": "Разрешения",
|
||||
"mcpServers": "MCP серверы",
|
||||
"appearance": "Внешний вид"
|
||||
},
|
||||
"account": {
|
||||
"title": "Аккаунт",
|
||||
"language": "Язык",
|
||||
"languageLabel": "Язык интерфейса",
|
||||
"languageDescription": "Выберите предпочитаемый язык для интерфейса",
|
||||
"username": "Имя пользователя",
|
||||
"email": "Email",
|
||||
"profile": "Профиль",
|
||||
"changePassword": "Изменить пароль"
|
||||
},
|
||||
"mcp": {
|
||||
"title": "MCP серверы",
|
||||
"addServer": "Добавить сервер",
|
||||
"editServer": "Редактировать сервер",
|
||||
"deleteServer": "Удалить сервер",
|
||||
"serverName": "Имя сервера",
|
||||
"serverType": "Тип сервера",
|
||||
"config": "Конфигурация",
|
||||
"testConnection": "Проверить подключение",
|
||||
"status": "Статус",
|
||||
"connected": "Подключен",
|
||||
"disconnected": "Отключен",
|
||||
"scope": {
|
||||
"label": "Область",
|
||||
"user": "Пользователь",
|
||||
"project": "Проект"
|
||||
}
|
||||
},
|
||||
"appearance": {
|
||||
"title": "Внешний вид",
|
||||
"theme": "Тема",
|
||||
"codeEditor": "Редактор кода",
|
||||
"editorTheme": "Тема редактора",
|
||||
"wordWrap": "Перенос слов",
|
||||
"showMinimap": "Показать миникарту",
|
||||
"lineNumbers": "Номера строк",
|
||||
"fontSize": "Размер шрифта"
|
||||
},
|
||||
"actions": {
|
||||
"saveChanges": "Сохранить изменения",
|
||||
"resetToDefaults": "Сбросить к значениям по умолчанию",
|
||||
"cancelChanges": "Отменить изменения"
|
||||
},
|
||||
"quickSettings": {
|
||||
"title": "Быстрые настройки",
|
||||
"sections": {
|
||||
"appearance": "Внешний вид",
|
||||
"toolDisplay": "Отображение инструментов",
|
||||
"viewOptions": "Параметры просмотра",
|
||||
"inputSettings": "Настройки ввода",
|
||||
"whisperDictation": "Диктовка Whisper"
|
||||
},
|
||||
"darkMode": "Темная тема",
|
||||
"autoExpandTools": "Автоматически разворачивать инструменты",
|
||||
"showRawParameters": "Показывать сырые параметры",
|
||||
"showThinking": "Показывать размышления",
|
||||
"autoScrollToBottom": "Автопрокрутка вниз",
|
||||
"sendByCtrlEnter": "Отправка по Ctrl+Enter",
|
||||
"sendByCtrlEnterDescription": "Когда включено, нажатие Ctrl+Enter будет отправлять сообщение вместо просто Enter. Это полезно для пользователей IME, чтобы избежать случайной отправки.",
|
||||
"dragHandle": {
|
||||
"dragging": "Перетаскивание ручки",
|
||||
"closePanel": "Закрыть панель настроек",
|
||||
"openPanel": "Открыть панель настроек",
|
||||
"draggingStatus": "Перетаскивание...",
|
||||
"toggleAndMove": "Нажмите для переключения, перетащите для перемещения"
|
||||
},
|
||||
"whisper": {
|
||||
"modes": {
|
||||
"default": "Режим по умолчанию",
|
||||
"defaultDescription": "Прямая транскрипция вашей речи",
|
||||
"prompt": "Улучшение запроса",
|
||||
"promptDescription": "Преобразование грубых идей в четкие, детальные AI-запросы",
|
||||
"vibe": "Режим Vibe",
|
||||
"vibeDescription": "Форматирование идей как четких инструкций агента с деталями"
|
||||
}
|
||||
}
|
||||
},
|
||||
"terminalShortcuts": {
|
||||
"title": "Горячие клавиши терминала",
|
||||
"sectionKeys": "Клавиши",
|
||||
"sectionNavigation": "Навигация",
|
||||
"escape": "Escape",
|
||||
"tab": "Tab",
|
||||
"shiftTab": "Shift+Tab",
|
||||
"arrowUp": "Стрелка вверх",
|
||||
"arrowDown": "Стрелка вниз",
|
||||
"scrollDown": "Прокрутка вниз",
|
||||
"handle": {
|
||||
"closePanel": "Закрыть панель горячих клавиш",
|
||||
"openPanel": "Открыть панель горячих клавиш"
|
||||
}
|
||||
},
|
||||
"mainTabs": {
|
||||
"label": "Настройки",
|
||||
"agents": "Агенты",
|
||||
"appearance": "Внешний вид",
|
||||
"git": "Git",
|
||||
"apiTokens": "API и токены",
|
||||
"tasks": "Задачи"
|
||||
},
|
||||
"appearanceSettings": {
|
||||
"darkMode": {
|
||||
"label": "Темная тема",
|
||||
"description": "Переключение между светлой и темной темами"
|
||||
},
|
||||
"projectSorting": {
|
||||
"label": "Сортировка проектов",
|
||||
"description": "Как проекты упорядочены на боковой панели",
|
||||
"alphabetical": "По алфавиту",
|
||||
"recentActivity": "По недавней активности"
|
||||
},
|
||||
"codeEditor": {
|
||||
"title": "Редактор кода",
|
||||
"theme": {
|
||||
"label": "Тема редактора",
|
||||
"description": "Тема по умолчанию для редактора кода"
|
||||
},
|
||||
"wordWrap": {
|
||||
"label": "Перенос слов",
|
||||
"description": "Включить перенос слов по умолчанию в редакторе"
|
||||
},
|
||||
"showMinimap": {
|
||||
"label": "Показать миникарту",
|
||||
"description": "Отображать миникарту для упрощения навигации в представлении различий"
|
||||
},
|
||||
"lineNumbers": {
|
||||
"label": "Показать номера строк",
|
||||
"description": "Отображать номера строк в редакторе"
|
||||
},
|
||||
"fontSize": {
|
||||
"label": "Размер шрифта",
|
||||
"description": "Размер шрифта редактора в пикселях"
|
||||
}
|
||||
}
|
||||
},
|
||||
"mcpForm": {
|
||||
"title": {
|
||||
"add": "Добавить MCP сервер",
|
||||
"edit": "Редактировать MCP сервер"
|
||||
},
|
||||
"importMode": {
|
||||
"form": "Ввод формы",
|
||||
"json": "Импорт JSON"
|
||||
},
|
||||
"scope": {
|
||||
"label": "Область",
|
||||
"userGlobal": "Пользователь (глобально)",
|
||||
"projectLocal": "Проект (локально)",
|
||||
"userDescription": "Область пользователя: доступно во всех проектах на вашей машине",
|
||||
"projectDescription": "Локальная область: доступно только в выбранном проекте",
|
||||
"cannotChange": "Область не может быть изменена при редактировании существующего сервера"
|
||||
},
|
||||
"fields": {
|
||||
"serverName": "Имя сервера",
|
||||
"transportType": "Тип транспорта",
|
||||
"command": "Команда",
|
||||
"arguments": "Аргументы (по одному на строку)",
|
||||
"jsonConfig": "JSON конфигурация",
|
||||
"url": "URL",
|
||||
"envVars": "Переменные окружения (КЛЮЧ=значение, по одной на строку)",
|
||||
"headers": "Заголовки (КЛЮЧ=значение, по одному на строку)",
|
||||
"selectProject": "Выберите проект..."
|
||||
},
|
||||
"placeholders": {
|
||||
"serverName": "мой-сервер"
|
||||
},
|
||||
"validation": {
|
||||
"missingType": "Отсутствует обязательное поле: type",
|
||||
"stdioRequiresCommand": "тип stdio требует поле command",
|
||||
"httpRequiresUrl": "тип {{type}} требует поле url",
|
||||
"invalidJson": "Неверный формат JSON",
|
||||
"jsonHelp": "Вставьте конфигурацию вашего MCP сервера в формате JSON. Примеры форматов:",
|
||||
"jsonExampleStdio": "• stdio: {\"type\":\"stdio\",\"command\":\"npx\",\"args\":[\"@upstash/context7-mcp\"]}",
|
||||
"jsonExampleHttp": "• http/sse: {\"type\":\"http\",\"url\":\"https://api.example.com/mcp\"}"
|
||||
},
|
||||
"configDetails": "Детали конфигурации (из {{configFile}})",
|
||||
"projectPath": "Путь: {{path}}",
|
||||
"actions": {
|
||||
"cancel": "Отмена",
|
||||
"saving": "Сохранение...",
|
||||
"addServer": "Добавить сервер",
|
||||
"updateServer": "Обновить сервер"
|
||||
}
|
||||
},
|
||||
"saveStatus": {
|
||||
"success": "Настройки успешно сохранены!",
|
||||
"error": "Не удалось сохранить настройки",
|
||||
"saving": "Сохранение..."
|
||||
},
|
||||
"footerActions": {
|
||||
"save": "Сохранить настройки",
|
||||
"cancel": "Отмена"
|
||||
},
|
||||
"git": {
|
||||
"title": "Конфигурация Git",
|
||||
"description": "Настройте вашу git идентичность для коммитов. Эти настройки будут применены глобально через git config --global",
|
||||
"name": {
|
||||
"label": "Имя Git",
|
||||
"help": "Ваше имя для git коммитов"
|
||||
},
|
||||
"email": {
|
||||
"label": "Email Git",
|
||||
"help": "Ваш email для git коммитов"
|
||||
},
|
||||
"actions": {
|
||||
"save": "Сохранить конфигурацию",
|
||||
"saving": "Сохранение..."
|
||||
},
|
||||
"status": {
|
||||
"success": "Успешно сохранено"
|
||||
}
|
||||
},
|
||||
"apiKeys": {
|
||||
"title": "API ключи",
|
||||
"description": "Генерируйте API ключи для доступа к внешнему API из других приложений.",
|
||||
"newKey": {
|
||||
"alertTitle": "⚠️ Сохраните ваш API ключ",
|
||||
"alertMessage": "Это единственный раз, когда вы увидите этот ключ. Сохраните его в безопасном месте.",
|
||||
"iveSavedIt": "Я сохранил его"
|
||||
},
|
||||
"form": {
|
||||
"placeholder": "Имя API ключа (например, Продакшн сервер)",
|
||||
"createButton": "Создать",
|
||||
"cancelButton": "Отмена"
|
||||
},
|
||||
"newButton": "Новый API ключ",
|
||||
"empty": "API ключи еще не созданы.",
|
||||
"list": {
|
||||
"created": "Создан:",
|
||||
"lastUsed": "Последнее использование:"
|
||||
},
|
||||
"confirmDelete": "Вы уверены, что хотите удалить этот API ключ?",
|
||||
"status": {
|
||||
"active": "Активен",
|
||||
"inactive": "Неактивен"
|
||||
},
|
||||
"github": {
|
||||
"title": "GitHub токены",
|
||||
"description": "Добавьте персональные токены доступа GitHub для клонирования приватных репозиториев через внешний API.",
|
||||
"descriptionAlt": "Добавьте персональные токены доступа GitHub для клонирования приватных репозиториев. Вы также можете передавать токены напрямую в API запросах без их сохранения.",
|
||||
"addButton": "Добавить токен",
|
||||
"form": {
|
||||
"namePlaceholder": "Имя токена (например, Личные репозитории)",
|
||||
"tokenPlaceholder": "Персональный токен доступа GitHub (ghp_...)",
|
||||
"descriptionPlaceholder": "Описание (необязательно)",
|
||||
"addButton": "Добавить токен",
|
||||
"cancelButton": "Отмена",
|
||||
"howToCreate": "Как создать персональный токен доступа GitHub →"
|
||||
},
|
||||
"empty": "GitHub токены еще не добавлены.",
|
||||
"added": "Добавлен:",
|
||||
"confirmDelete": "Вы уверены, что хотите удалить этот GitHub токен?"
|
||||
},
|
||||
"apiDocsLink": "Документация API",
|
||||
"documentation": {
|
||||
"title": "Документация внешнего API",
|
||||
"description": "Узнайте, как использовать внешний API для запуска сеансов Claude/Cursor из ваших приложений.",
|
||||
"viewLink": "Просмотр документации API →"
|
||||
},
|
||||
"loading": "Загрузка...",
|
||||
"version": {
|
||||
"updateAvailable": "Доступно обновление: v{{version}}"
|
||||
}
|
||||
},
|
||||
"tasks": {
|
||||
"checking": "Проверка установки TaskMaster...",
|
||||
"notInstalled": {
|
||||
"title": "TaskMaster AI CLI не установлен",
|
||||
"description": "TaskMaster CLI требуется для использования функций управления задачами. Установите его для начала работы:",
|
||||
"installCommand": "npm install -g task-master-ai",
|
||||
"viewOnGitHub": "Посмотреть на GitHub",
|
||||
"afterInstallation": "После установки:",
|
||||
"steps": {
|
||||
"restart": "Перезапустите это приложение",
|
||||
"autoAvailable": "Функции TaskMaster станут автоматически доступны",
|
||||
"initCommand": "Используйте task-master init в каталоге вашего проекта"
|
||||
}
|
||||
},
|
||||
"settings": {
|
||||
"enableLabel": "Включить интеграцию TaskMaster",
|
||||
"enableDescription": "Показывать задачи TaskMaster, баннеры и индикаторы боковой панели в интерфейсе"
|
||||
}
|
||||
},
|
||||
"agents": {
|
||||
"authStatus": {
|
||||
"checking": "Проверка...",
|
||||
"connected": "Подключен",
|
||||
"notConnected": "Не подключен",
|
||||
"disconnected": "Отключен",
|
||||
"checkingAuth": "Проверка статуса аутентификации...",
|
||||
"loggedInAs": "Вошли как {{email}}",
|
||||
"authenticatedUser": "аутентифицированный пользователь"
|
||||
},
|
||||
"account": {
|
||||
"claude": {
|
||||
"description": "AI-ассистент Anthropic Claude"
|
||||
},
|
||||
"cursor": {
|
||||
"description": "Редактор кода с AI Cursor"
|
||||
},
|
||||
"codex": {
|
||||
"description": "AI-ассистент OpenAI Codex"
|
||||
}
|
||||
},
|
||||
"connectionStatus": "Статус подключения",
|
||||
"login": {
|
||||
"title": "Вход",
|
||||
"reAuthenticate": "Повторная аутентификация",
|
||||
"description": "Войдите в ваш аккаунт {{agent}} для включения AI функций",
|
||||
"reAuthDescription": "Войдите с другим аккаунтом или обновите учетные данные",
|
||||
"button": "Войти",
|
||||
"reLoginButton": "Войти снова"
|
||||
},
|
||||
"error": "Ошибка: {{error}}"
|
||||
},
|
||||
"permissions": {
|
||||
"title": "Настройки разрешений",
|
||||
"skipPermissions": {
|
||||
"label": "Пропускать запросы разрешений (используйте с осторожностью)",
|
||||
"claudeDescription": "Эквивалентно флагу --dangerously-skip-permissions",
|
||||
"cursorDescription": "Эквивалентно флагу -f в Cursor CLI"
|
||||
},
|
||||
"allowedTools": {
|
||||
"title": "Разрешенные инструменты",
|
||||
"description": "Инструменты, которые автоматически разрешены без запроса разрешения",
|
||||
"placeholder": "например, \"Bash(git log:*)\" или \"Write\"",
|
||||
"quickAdd": "Быстро добавить общие инструменты:",
|
||||
"empty": "Разрешенные инструменты не настроены"
|
||||
},
|
||||
"blockedTools": {
|
||||
"title": "Заблокированные инструменты",
|
||||
"description": "Инструменты, которые автоматически блокируются без запроса разрешения",
|
||||
"placeholder": "например, \"Bash(rm:*)\"",
|
||||
"empty": "Заблокированные инструменты не настроены"
|
||||
},
|
||||
"allowedCommands": {
|
||||
"title": "Разрешенные команды оболочки",
|
||||
"description": "Команды оболочки, которые автоматически разрешены без запроса",
|
||||
"placeholder": "например, \"Shell(ls)\" или \"Shell(git status)\"",
|
||||
"quickAdd": "Быстро добавить общие команды:",
|
||||
"empty": "Разрешенные команды не настроены"
|
||||
},
|
||||
"blockedCommands": {
|
||||
"title": "Заблокированные команды оболочки",
|
||||
"description": "Команды оболочки, которые автоматически блокируются",
|
||||
"placeholder": "например, \"Shell(rm -rf)\" или \"Shell(sudo)\"",
|
||||
"empty": "Заблокированные команды не настроены"
|
||||
},
|
||||
"toolExamples": {
|
||||
"title": "Примеры шаблонов инструментов:",
|
||||
"bashGitLog": "- Разрешить все команды git log",
|
||||
"bashGitDiff": "- Разрешить все команды git diff",
|
||||
"write": "- Разрешить все использование инструмента Write",
|
||||
"bashRm": "- Заблокировать все команды rm (опасно)"
|
||||
},
|
||||
"shellExamples": {
|
||||
"title": "Примеры команд оболочки:",
|
||||
"ls": "- Разрешить команду ls",
|
||||
"gitStatus": "- Разрешить git status",
|
||||
"npmInstall": "- Разрешить npm install",
|
||||
"rmRf": "- Заблокировать рекурсивное удаление"
|
||||
},
|
||||
"codex": {
|
||||
"permissionMode": "Режим разрешений",
|
||||
"description": "Управляет тем, как Codex обрабатывает изменения файлов и выполнение команд",
|
||||
"modes": {
|
||||
"default": {
|
||||
"title": "По умолчанию",
|
||||
"description": "Только доверенные команды (ls, cat, grep, git status и т.д.) выполняются автоматически. Другие команды пропускаются. Может записывать в рабочее пространство."
|
||||
},
|
||||
"acceptEdits": {
|
||||
"title": "Принимать правки",
|
||||
"description": "Все команды выполняются автоматически в рабочем пространстве. Полный автоматический режим с изолированным выполнением."
|
||||
},
|
||||
"bypassPermissions": {
|
||||
"title": "Обход разрешений",
|
||||
"description": "Полный системный доступ без ограничений. Все команды выполняются автоматически с полным доступом к диску и сети. Используйте с осторожностью."
|
||||
}
|
||||
},
|
||||
"technicalDetails": "Технические детали",
|
||||
"technicalInfo": {
|
||||
"default": "sandboxMode=workspace-write, approvalPolicy=untrusted. Доверенные команды: cat, cd, grep, head, ls, pwd, tail, git status/log/diff/show, find (без -exec) и т.д.",
|
||||
"acceptEdits": "sandboxMode=workspace-write, approvalPolicy=never. Все команды автоматически выполняются в каталоге проекта.",
|
||||
"bypassPermissions": "sandboxMode=danger-full-access, approvalPolicy=never. Полный системный доступ, используйте только в доверенных средах.",
|
||||
"overrideNote": "Вы можете переопределить это для каждого сеанса, используя кнопку режима в интерфейсе чата."
|
||||
}
|
||||
},
|
||||
"actions": {
|
||||
"add": "Добавить"
|
||||
}
|
||||
},
|
||||
"mcpServers": {
|
||||
"title": "MCP серверы",
|
||||
"description": {
|
||||
"claude": "Серверы Model Context Protocol предоставляют дополнительные инструменты и источники данных для Claude",
|
||||
"cursor": "Серверы Model Context Protocol предоставляют дополнительные инструменты и источники данных для Cursor",
|
||||
"codex": "Серверы Model Context Protocol предоставляют дополнительные инструменты и источники данных для Codex"
|
||||
},
|
||||
"addButton": "Добавить MCP сервер",
|
||||
"empty": "MCP серверы не настроены",
|
||||
"serverType": "Тип",
|
||||
"scope": {
|
||||
"local": "локальный",
|
||||
"user": "пользователь"
|
||||
},
|
||||
"config": {
|
||||
"command": "Команда",
|
||||
"url": "URL",
|
||||
"args": "Аргументы",
|
||||
"environment": "Окружение"
|
||||
},
|
||||
"tools": {
|
||||
"title": "Инструменты",
|
||||
"count": "({{count}}):",
|
||||
"more": "+{{count}} еще"
|
||||
},
|
||||
"actions": {
|
||||
"edit": "Редактировать сервер",
|
||||
"delete": "Удалить сервер"
|
||||
},
|
||||
"help": {
|
||||
"title": "О Codex MCP",
|
||||
"description": "Codex поддерживает MCP серверы на основе stdio. Вы можете добавлять серверы, которые расширяют возможности Codex дополнительными инструментами и ресурсами."
|
||||
}
|
||||
}
|
||||
}
|
||||
134
src/i18n/locales/ru/sidebar.json
Normal file
134
src/i18n/locales/ru/sidebar.json
Normal file
@@ -0,0 +1,134 @@
|
||||
{
|
||||
"projects": {
|
||||
"title": "Проекты",
|
||||
"newProject": "Новый проект",
|
||||
"deleteProject": "Удалить проект",
|
||||
"renameProject": "Переименовать проект",
|
||||
"noProjects": "Проекты не найдены",
|
||||
"loadingProjects": "Загрузка проектов...",
|
||||
"searchPlaceholder": "Поиск проектов...",
|
||||
"projectNamePlaceholder": "Имя проекта",
|
||||
"starred": "Избранное",
|
||||
"all": "Все",
|
||||
"untitledSession": "Безымянный сеанс",
|
||||
"newSession": "Новый сеанс",
|
||||
"codexSession": "Сеанс Codex",
|
||||
"fetchingProjects": "Получение ваших проектов и сеансов Claude",
|
||||
"projects": "проекты",
|
||||
"noMatchingProjects": "Нет подходящих проектов",
|
||||
"tryDifferentSearch": "Попробуйте изменить поисковый запрос",
|
||||
"runClaudeCli": "Запустите Claude CLI в каталоге проекта для начала работы"
|
||||
},
|
||||
"app": {
|
||||
"title": "Claude Code UI",
|
||||
"subtitle": "Интерфейс AI помощника для программирования"
|
||||
},
|
||||
"sessions": {
|
||||
"title": "Сеансы",
|
||||
"newSession": "Новый сеанс",
|
||||
"deleteSession": "Удалить сеанс",
|
||||
"renameSession": "Переименовать сеанс",
|
||||
"noSessions": "Сеансов пока нет",
|
||||
"loadingSessions": "Загрузка сеансов...",
|
||||
"unnamed": "Без имени",
|
||||
"loading": "Загрузка...",
|
||||
"showMore": "Показать больше сеансов"
|
||||
},
|
||||
"tooltips": {
|
||||
"viewEnvironments": "Просмотр окружений",
|
||||
"hideSidebar": "Скрыть боковую панель",
|
||||
"createProject": "Создать новый проект",
|
||||
"refresh": "Обновить проекты и сеансы (Ctrl+R)",
|
||||
"renameProject": "Переименовать проект (F2)",
|
||||
"deleteProject": "Удалить пустой проект (Delete)",
|
||||
"addToFavorites": "Добавить в избранное",
|
||||
"removeFromFavorites": "Удалить из избранного",
|
||||
"editSessionName": "Вручную редактировать имя сеанса",
|
||||
"deleteSession": "Удалить этот сеанс навсегда",
|
||||
"save": "Сохранить",
|
||||
"cancel": "Отмена",
|
||||
"clearSearch": "Очистить поиск"
|
||||
},
|
||||
"navigation": {
|
||||
"chat": "Чат",
|
||||
"files": "Файлы",
|
||||
"git": "Git",
|
||||
"terminal": "Терминал",
|
||||
"tasks": "Задачи"
|
||||
},
|
||||
"actions": {
|
||||
"refresh": "Обновить",
|
||||
"settings": "Настройки",
|
||||
"collapseAll": "Свернуть все",
|
||||
"expandAll": "Развернуть все",
|
||||
"cancel": "Отмена",
|
||||
"save": "Сохранить",
|
||||
"delete": "Удалить",
|
||||
"rename": "Переименовать",
|
||||
"joinCommunity": "Присоединиться к сообществу"
|
||||
},
|
||||
"status": {
|
||||
"active": "Активен",
|
||||
"inactive": "Неактивен",
|
||||
"thinking": "Думает...",
|
||||
"error": "Ошибка",
|
||||
"aborted": "Прервано",
|
||||
"unknown": "Неизвестно"
|
||||
},
|
||||
"time": {
|
||||
"justNow": "Только что",
|
||||
"oneMinuteAgo": "1 мин. назад",
|
||||
"minutesAgo": "{{count}} мин. назад",
|
||||
"oneHourAgo": "1 час назад",
|
||||
"hoursAgo": "{{count}} ч. назад",
|
||||
"oneDayAgo": "1 день назад",
|
||||
"daysAgo": "{{count}} дн. назад"
|
||||
},
|
||||
"messages": {
|
||||
"deleteConfirm": "Вы уверены, что хотите это удалить?",
|
||||
"renameSuccess": "Успешно переименовано",
|
||||
"deleteSuccess": "Успешно удалено",
|
||||
"errorOccurred": "Произошла ошибка",
|
||||
"deleteSessionConfirm": "Вы уверены, что хотите удалить этот сеанс? Это действие нельзя отменить.",
|
||||
"deleteProjectConfirm": "Вы уверены, что хотите удалить этот пустой проект? Это действие нельзя отменить.",
|
||||
"enterProjectPath": "Пожалуйста, введите путь к проекту",
|
||||
"deleteSessionFailed": "Не удалось удалить сеанс. Попробуйте снова.",
|
||||
"deleteSessionError": "Ошибка при удалении сеанса. Попробуйте снова.",
|
||||
"renameSessionFailed": "Не удалось переименовать сеанс. Попробуйте снова.",
|
||||
"renameSessionError": "Ошибка при переименовании сеанса. Попробуйте снова.",
|
||||
"deleteProjectFailed": "Не удалось удалить проект. Попробуйте снова.",
|
||||
"deleteProjectError": "Ошибка при удалении проекта. Попробуйте снова.",
|
||||
"createProjectFailed": "Не удалось создать проект. Попробуйте снова.",
|
||||
"createProjectError": "Ошибка при создании проекта. Попробуйте снова."
|
||||
},
|
||||
"version": {
|
||||
"updateAvailable": "Доступно обновление"
|
||||
},
|
||||
"search": {
|
||||
"modeProjects": "Проекты",
|
||||
"modeConversations": "Разговоры",
|
||||
"conversationsPlaceholder": "Поиск в разговорах...",
|
||||
"searching": "Поиск...",
|
||||
"noResults": "Результаты не найдены",
|
||||
"tryDifferentQuery": "Попробуйте другой поисковый запрос",
|
||||
"matches_one": "{{count}} совпадение",
|
||||
"matches_few": "{{count}} совпадения",
|
||||
"matches_many": "{{count}} совпадений",
|
||||
"matches_other": "{{count}} совпадений",
|
||||
"projectsScanned_one": "{{count}} проект просканирован",
|
||||
"projectsScanned_few": "{{count}} проекта просканировано",
|
||||
"projectsScanned_many": "{{count}} проектов просканировано",
|
||||
"projectsScanned_other": "{{count}} проектов просканировано"
|
||||
},
|
||||
"deleteConfirmation": {
|
||||
"deleteProject": "Удалить проект",
|
||||
"deleteSession": "Удалить сеанс",
|
||||
"confirmDelete": "Вы уверены, что хотите удалить",
|
||||
"sessionCount_one": "Этот проект содержит {{count}} разговор.",
|
||||
"sessionCount_few": "Этот проект содержит {{count}} разговора.",
|
||||
"sessionCount_many": "Этот проект содержит {{count}} разговоров.",
|
||||
"sessionCount_other": "Этот проект содержит {{count}} разговоров.",
|
||||
"allConversationsDeleted": "Все разговоры будут удалены навсегда.",
|
||||
"cannotUndo": "Это действие нельзя отменить."
|
||||
}
|
||||
}
|
||||
142
src/i18n/locales/ru/tasks.json
Normal file
142
src/i18n/locales/ru/tasks.json
Normal file
@@ -0,0 +1,142 @@
|
||||
{
|
||||
"notConfigured": {
|
||||
"title": "TaskMaster AI не настроен",
|
||||
"description": "TaskMaster помогает разбивать сложные проекты на управляемые задачи с помощью AI",
|
||||
"whatIsTitle": "🎯 Что такое TaskMaster?",
|
||||
"features": {
|
||||
"aiPowered": "Управление задачами с AI: разбивайте сложные проекты на управляемые подзадачи",
|
||||
"prdTemplates": "Шаблоны PRD: генерируйте задачи из документов требований к продукту",
|
||||
"dependencyTracking": "Отслеживание зависимостей: понимайте связи задач и порядок выполнения",
|
||||
"progressVisualization": "Визуализация прогресса: канбан-доски и детальная аналитика задач",
|
||||
"cliIntegration": "Интеграция с CLI: используйте команды taskmaster для продвинутых рабочих процессов"
|
||||
},
|
||||
"initializeButton": "Инициализировать TaskMaster AI"
|
||||
},
|
||||
"gettingStarted": {
|
||||
"title": "Начало работы с TaskMaster",
|
||||
"subtitle": "TaskMaster инициализирован! Вот что делать дальше:",
|
||||
"steps": {
|
||||
"createPRD": {
|
||||
"title": "Создайте документ требований к продукту (PRD)",
|
||||
"description": "Обсудите идею вашего проекта и создайте PRD, описывающий то, что вы хотите построить.",
|
||||
"addButton": "Добавить PRD",
|
||||
"existingPRDs": "Существующие PRD:"
|
||||
},
|
||||
"generateTasks": {
|
||||
"title": "Генерация задач из PRD",
|
||||
"description": "Когда у вас есть PRD, попросите вашего AI-ассистента разобрать его, и TaskMaster автоматически разобьет его на управляемые задачи с деталями реализации."
|
||||
},
|
||||
"analyzeTasks": {
|
||||
"title": "Анализ и расширение задач",
|
||||
"description": "Попросите вашего AI-ассистента проанализировать сложность задач и расширить их в детальные подзадачи для упрощения реализации."
|
||||
},
|
||||
"startBuilding": {
|
||||
"title": "Начните разработку",
|
||||
"description": "Попросите вашего AI-ассистента начать работу над задачами, обновлять их статус и добавлять новые задачи по мере развития вашего проекта."
|
||||
}
|
||||
},
|
||||
"tip": "💡 Совет: начните с PRD, чтобы получить максимум от AI-генерации задач TaskMaster"
|
||||
},
|
||||
"setupModal": {
|
||||
"title": "Настройка TaskMaster",
|
||||
"subtitle": "Интерактивный CLI для {{projectName}}",
|
||||
"willStart": "Инициализация TaskMaster начнется автоматически",
|
||||
"completed": "Настройка TaskMaster завершена! Теперь вы можете закрыть это окно.",
|
||||
"closeButton": "Закрыть",
|
||||
"closeContinueButton": "Закрыть и продолжить"
|
||||
},
|
||||
"helpGuide": {
|
||||
"title": "Начало работы с TaskMaster",
|
||||
"subtitle": "Ваш гид по продуктивному управлению задачами",
|
||||
"examples": {
|
||||
"parsePRD": "💬 Пример:\n\"Я только что инициализировал новый проект с Claude Task Master. У меня есть PRD в .taskmaster/docs/prd.txt. Можете помочь мне разобрать его и настроить начальные задачи?\"",
|
||||
"expandTask": "💬 Пример:\n\"Задача 5 кажется сложной. Можете разбить её на подзадачи?\"",
|
||||
"addTask": "💬 Пример:\n\"Пожалуйста, добавьте новую задачу для реализации загрузки изображений профиля пользователя с использованием Cloudinary, изучите лучший подход.\""
|
||||
},
|
||||
"moreExamples": "Посмотреть больше примеров и шаблонов использования →",
|
||||
"proTips": {
|
||||
"title": "💡 Профессиональные советы",
|
||||
"search": "Используйте строку поиска для быстрого поиска конкретных задач",
|
||||
"views": "Переключайтесь между представлениями Канбан, Список и Сетка, используя переключатели представлений",
|
||||
"filters": "Используйте фильтры для фокусировки на конкретных статусах или приоритетах задач",
|
||||
"details": "Нажмите на любую задачу для просмотра детальной информации и управления подзадачами"
|
||||
},
|
||||
"learnMore": {
|
||||
"title": "📚 Узнать больше",
|
||||
"description": "TaskMaster AI - это продвинутая система управления задачами, созданная для разработчиков. Получите документацию, примеры и внесите вклад в проект.",
|
||||
"githubButton": "Посмотреть на GitHub"
|
||||
}
|
||||
},
|
||||
"search": {
|
||||
"placeholder": "Поиск задач..."
|
||||
},
|
||||
"filters": {
|
||||
"button": "Фильтры",
|
||||
"status": "Статус",
|
||||
"priority": "Приоритет",
|
||||
"sortBy": "Сортировать по",
|
||||
"allStatuses": "Все статусы",
|
||||
"allPriorities": "Все приоритеты",
|
||||
"showing": "Показано {{filtered}} из {{total}} задач",
|
||||
"clearFilters": "Очистить фильтры"
|
||||
},
|
||||
"sort": {
|
||||
"id": "ID",
|
||||
"status": "Статус",
|
||||
"priority": "Приоритет",
|
||||
"idAsc": "ID (по возрастанию)",
|
||||
"idDesc": "ID (по убыванию)",
|
||||
"titleAsc": "Название (А-Я)",
|
||||
"titleDesc": "Название (Я-А)",
|
||||
"statusAsc": "Статус (сначала ожидающие)",
|
||||
"statusDesc": "Статус (сначала выполненные)",
|
||||
"priorityAsc": "Приоритет (сначала высокий)",
|
||||
"priorityDesc": "Приоритет (сначала низкий)"
|
||||
},
|
||||
"views": {
|
||||
"kanban": "Представление Канбан",
|
||||
"list": "Представление списком",
|
||||
"grid": "Представление сеткой"
|
||||
},
|
||||
"kanban": {
|
||||
"pending": "📋 К выполнению",
|
||||
"inProgress": "🚀 В процессе",
|
||||
"done": "✅ Выполнено",
|
||||
"blocked": "🚫 Заблокировано",
|
||||
"deferred": "⏳ Отложено",
|
||||
"cancelled": "❌ Отменено",
|
||||
"noTasksYet": "Задач пока нет",
|
||||
"tasksWillAppear": "Задачи появятся здесь",
|
||||
"moveTasksHere": "Перемещайте задачи сюда при начале работы",
|
||||
"completedTasksHere": "Завершенные задачи появляются здесь",
|
||||
"statusTasksHere": "Задачи с этим статусом появятся здесь"
|
||||
},
|
||||
"buttons": {
|
||||
"help": "Руководство по началу работы с TaskMaster",
|
||||
"prds": "PRD",
|
||||
"addPRD": "Добавить PRD",
|
||||
"addTask": "Добавить задачу",
|
||||
"createNewPRD": "Создать новый PRD",
|
||||
"prdsAvailable": "Доступно {{count}} PRD"
|
||||
},
|
||||
"prd": {
|
||||
"modified": "Изменено: {{date}}"
|
||||
},
|
||||
"statuses": {
|
||||
"pending": "Ожидание",
|
||||
"in-progress": "В процессе",
|
||||
"done": "Выполнено",
|
||||
"blocked": "Заблокировано",
|
||||
"deferred": "Отложено",
|
||||
"cancelled": "Отменено"
|
||||
},
|
||||
"priorities": {
|
||||
"high": "Высокий",
|
||||
"medium": "Средний",
|
||||
"low": "Низкий"
|
||||
},
|
||||
"noMatchingTasks": {
|
||||
"title": "Нет задач, соответствующих вашим фильтрам",
|
||||
"description": "Попробуйте изменить критерии поиска или фильтрации."
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user