/
mcniki
/
CodeContext
Обзор
Документация
Войти
/
mcniki
/
CodeContext
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
src/i18n/ru.json
463 строки
39 KB
Gorobets Nikita
v1.28.0: flatten all service/use-case classes to free functions, delete FileService watcher and dead UpdaterService pass, i18n for sidebar hide-tab, fix freezing status
26 июн 2026, 15:21
26 июн 2026, 15:21
7fc7163
Код
Авторство
О чём код?
{ "main.cli_mode": "Режим CLI", "main.path": "Путь к проекту", "main.patch": "JSON-файл с патчами", "main.mode": "Режим обработки", "main.install_context": "Установить контекстное меню", "main.remove_context": "Удалить контекстное меню", "main.minify": "Минифицировать вывод", "main.skeleton": "Режим скелета кода", "main.format": "Формат вывода", "main.dry_run": "Тестовый прогон без сохранения", "main.silent": "Тихий режим", "main.stdout": "Вывод в stdout", "main.fail_if_exceeds": "Ошибка при превышении лимита токенов", "main.sent_to_existing": "📤 Путь отправлен существующему экземпляру приложения", "main_window.title": "CodeContext AI", "main_window.tab.file_tree": "📂 Файлы", "main_window.tab.analytics": "📊 Аналитика", "main_window.command.copy_to_clipboard": "📋 Копировать в буфер обмена", "main_window.command.open_in_editor": "📝 Открыть в редакторе", "main_window.command.preview": "👁 Предпросмотр", "main_window.command.send_to_chat": "💬 Отправить в чат", "main_window.command.save_to_file": "💾 Сохранить в файл", "main_window.command.toggle_minify": "Переключить Minify", "main_window.command.toggle_skeleton": "Переключить Skeleton", "main_window.command.toggle_mermaid": "Переключить Mermaid", "main_window.command.clear_workspace": "🗑 Очистить рабочее пространство", "main_window.command.apply_json_patch": "🔧 Применить JSON Patch", "main_window.command.toggle_theme": "🎨 Переключить тему", "main_window.command.check_updates": "🔄 Проверить обновления", "main_window.save_file.title": "Сохранить файл", "dialogs.ai_chat_title": "AI Чат (CodeContext)", "dialogs.chat.title": "AI Чат", "dialogs.chat.placeholder": "Задайте вопрос по коду...", "dialogs.chat.send": "Отправить", "dialogs.chat.system_loaded": "📎 Системный контекст загружен. Можете задать вопрос.", "dialogs.chat.you_label": "Вы", "dialogs.chat.waiting": "⏳ Ожидание...", "dialogs.preview.title": "👁 Предпросмотр", "dialogs.preview.tab_prompt": "📝 Промпт", "dialogs.preview.files_in_prompt": "📄 Файлы в промпте:", "dialogs.preview.copy_all": "📋 Копировать всё", "dialogs.preview.copy_file": "📄 Копировать файл", "dialogs.preview.tab_diff": "📊 Различия", "dialogs.preview.select_file": "Файл:", "dialogs.preview.savings_initial": "📊 Сравните оригинал и сжатый вариант", "dialogs.preview.savings": "Экономия: {original} → {processed} токенов ({percent:.1f}%)", "dialogs.preview.generating_diff": "Генерация различий...", "dialogs.bug_report.title": "Сообщить о баге", "dialogs.bug_report.description": "Опишите проблему, с которой вы столкнулись:", "dialogs.bug_report.placeholder": "Шаги для воспроизведения, ожидаемое поведение...", "dialogs.bug_report.logs_label": "Прикрепить логи:", "dialogs.bug_report.logs_today": "Логи за сегодня (Рекомендуется)", "dialogs.bug_report.logs_all": "Все логи (последние 500 строк)", "dialogs.bug_report.logs_none": "Не прикреплять логи", "dialogs.bug_report.send": "Скопировать и Открыть GitHub", "dialogs.bug_report.empty_desc": "Пожалуйста, опишите баг.", "dialogs.bug_report.copied_title": "Скопировано", "dialogs.bug_report.copied_msg": "Шаблон Issue скопирован. Вставьте его в описание на GitHub.", "dialogs.clipboard_error": "❌ Ошибка буфера обмена: {error}", "sidebar.bug_report.tooltip": "Нашли баг? Отправить в Issue", "dialogs.tour.title": "🎓 Интерактивный тур", "dialogs.tour.prev": "← Назад", "dialogs.tour.next": "Далее ➡", "dialogs.tour.finish": "🎉 Завершить", "dialogs.edit_folder.title": "✏️ Редактировать папку", "dialogs.edit_folder.ok": "✅ Готово", "dialogs.json_patch.title": "🔧 JSON-патч", "dialogs.json_patch.instruction": "Введите JSON-патч в формате списка действий:", "dialogs.json_patch.cancel": "Отмена", "dialogs.json_patch.apply": "✅ Применить", "dialogs.diff.title": "🛡 Безопасный просмотр изменений", "dialogs.diff.check_llm": "🔍 Проверить LLM", "dialogs.diff.verdict_placeholder": "Результат проверки...", "dialogs.diff.suggestion_label": "💡 Альтернативное предложение LLM:", "dialogs.diff.accept_suggestion": "✅ Принять исправление", "dialogs.diff.reject_suggestion": "❌ Отклонить", "dialogs.diff.cancel": "Отмена", "dialogs.diff.save_selected": "💾 Сохранить выбранные", "dialogs.diff.patch_error": "❌ Ошибка патча", "dialogs.diff.checking": "🔍 Проверка...", "dialogs.diff.sending_request": "Отправка запроса к LLM...", "dialogs.diff.verdict": "Статус: {status}\nПричина: {reason}", "dialogs.diff.check_again": "🔍 Проверить снова", "dialogs.diff.updated_by_ai": " [Обновлено AI]", "dialogs.diff.suggestion_applied": "✅ Предложение принято", "dialogs.diff.suggestion_rejected": "❌ Предложение отклонено", "dialogs.update.title": "🔄 Обновление", "dialogs.update.checking": "🔍 Проверка обновления {version}...", "dialogs.update.cancel": "Отмена", "dialogs.update.available": "🎉 Доступно обновление {version}", "dialogs.update.download": "⬇️ Скачать", "dialogs.update.later": "Позже", "dialogs.update.latest": "✅ Установлена актуальная версия", "dialogs.update.close": "Закрыть", "dialogs.update.error": "❌ Ошибка проверки обновлений", "dialogs.update.downloading": "⬇️ Загрузка...", "dialogs.update.installing": "⚙️ Установка обновления...", "dialogs.update.install_notes": "Пожалуйста, подождите, обновление устанавливается...", "dialogs.command_palette.placeholder": "🔍 Поиск команды...", "dialogs.ui_customization.title": "⚙️ Настройка интерфейса", "dialogs.ui_customization.visible_tabs": "Видимые вкладки:", "dialogs.ui_customization.tab_sources": "📂 Источники", "dialogs.ui_customization.tab_filters": "🔧 Фильтры", "dialogs.ui_customization.tab_prompts": "📝 Промпты", "dialogs.ui_customization.tab_llm_os": "🤖 LLM и ОС", "dialogs.ui_customization.tab_appearance": "🎨 Внешний вид", "dialogs.ui_customization.visible_actions": "Видимые действия:", "dialogs.ui_customization.action_preview": "👁 Предпросмотр", "dialogs.ui_customization.action_clipboard": "📋 Буфер обмена", "dialogs.ui_customization.action_chat": "💬 Чат", "dialogs.ui_customization.action_editor": "📝 Редактор", "dialogs.ui_customization.action_file": "💾 Файл", "dialogs.ui_customization.visible_checkboxes": "Видимые опции обработки:", "dialogs.ui_customization.checkbox_dedup": "☑ Дедупликация", "dialogs.ui_customization.checkbox_aggressive": "☑ Агрессивная", "dialogs.ui_customization.checkbox_checkpoints": "☑ Контр. точки", "dialogs.ui_customization.checkbox_watch": "☑ Авто-слежка", "dialogs.ui_customization.cancel": "Отмена", "dialogs.ui_customization.save": "💾 Сохранить", "plugins.approval.title": "🔌 Подтверждение плагина", "plugins.approval.heading": "Новый плагин: {name}", "plugins.approval.info": "Этот плагин запрашивает доступ к вашему проекту:", "plugins.approval.name": "Название:", "plugins.approval.id": "ID:", "plugins.approval.version": "Версия:", "plugins.approval.description": "Описание:", "plugins.approval.warning": "⚠️ Убедитесь, что вы доверяете источнику этого плагина. Плагины имеют доступ к файловой системе и API приложения.", "plugins.approval.deny": "🚫 Запретить", "plugins.approval.allow": "✅ Разрешить", "plugins.install.success": "✅ Плагин установлен.", "plugins.install.error": "❌ Ошибка установки плагина: {error}", "plugins.install.title": "📦 Установка зависимостей плагина", "plugins.install.close": "Закрыть", "sidebar.title": "CodeContext AI", "sidebar.tab.sources": "📂 Источники", "sidebar.tab.filters": "🔧 Фильтры", "sidebar.tab.prompts": "📝 Промпты", "sidebar.tab.llm_os": "🤖 LLM и ОС", "sidebar.tab.appearance": "🎨 Внешний вид", "sidebar.ui_settings.tooltip": "⚙️ Настройка интерфейса", "sidebar.tour.button": "🎓 Тур", "sidebar.version.label": "v{version}", "sidebar.update.button": "🔄", "sidebar.sources.add_folder": "📂 Добавить папку", "sidebar.sources.add_github": "🐙 GitHub", "sidebar.sources.github_tooltip": "🐙 Клонировать репозиторий GitHub", "sidebar.sources.git_only": "Только изменённые файлы (Git)", "sidebar.sources.respect_gitignore": "Учитывать .gitignore", "sidebar.sources.scan_files": "🔍 Сканировать", "sidebar.sources.save_config": "💾 Сохранить конфиг", "sidebar.sources.clear_project": "🗑 Очистить проект", "sidebar.filters.save_preset_tooltip": "💾 Сохранить пресет", "sidebar.filters.delete_preset_tooltip": "🗑 Удалить пресет", "sidebar.filters.preset_label": "🎯 Пресет:", "sidebar.filters.extensions_label": "📄 Расширения файлов:", "sidebar.filters.extensions_placeholder": ".py\n.js\n.ts\n...", "sidebar.filters.ignore_paths_label": "🚫 Игнорируемые пути:", "sidebar.filters.ignore_paths_placeholder": ".git\nnode_modules\n__pycache__\n...", "sidebar.filters.include_tree": "🌳 Включить дерево проекта", "sidebar.filters.include_deps": "🔗 Включить граф зависимостей", "sidebar.filters.include_mermaid": "📊 Включить Mermaid-диаграмму", "sidebar.prompts.save_preset_tooltip": "💾 Сохранить пресет промпта", "sidebar.prompts.delete_preset_tooltip": "🗑 Удалить пресет промпта", "sidebar.prompts.preset_label": "🎯 Пресет:", "sidebar.prompts.system_prompt_label": "📝 Системный промпт:", "sidebar.prompts.apply_patch": "🔧 Применить JSON Patch", "sidebar.llm_os.llm_validator": "🤖 LLM Валидатор", "sidebar.llm_os.enable_llm_check": "✅ Включить проверку LLM", "sidebar.llm_os.url_label": "URL:", "sidebar.llm_os.key_label": "API-ключ:", "sidebar.llm_os.model_label": "Модель:", "sidebar.llm_os.ollama_preset": "⚡ Ollama", "sidebar.llm_os.lmstudio_preset": "💻 LM Studio", "sidebar.llm_os.os_integration": "🖥 Интеграция с {os_name}", "sidebar.llm_os.install_context_menu": "📋 Установить контекстное меню", "sidebar.llm_os.remove_context_menu": "🗑 Удалить контекстное меню", "sidebar.llm_os.cli_global": "💻 Глобальный CLI", "sidebar.llm_os.install_cli": "⚙️ Установить CLI", "sidebar.llm_os.remove_cli": "🗑 Удалить CLI", "sidebar.llm_os.editor_placeholder": "code --wait", "sidebar.llm_os.editor_label": "Внешний редактор:", "sidebar.llm_os.update_settings": "🔄 Настройки обновлений", "sidebar.llm_os.prerelease": "🧪 Получать pre-release версии", "sidebar.appearance.theme_label": "🎨 Тема:", "sidebar.appearance.mode_label": "🌙 Режим:", "sidebar.appearance.language_label": "🌐 Язык:", "sidebar.appearance.open_themes_folder": "📂 Открыть папку тем", "sidebar.appearance.import_theme": "📥 Импортировать тему", "sidebar.add_folder.title": "📂 Выберите папку проекта", "sidebar.add_github.prompt": "Введите URL GitHub репозитория (или PR ссылку):", "sidebar.add_github.title": "🐙 GitHub", "sidebar.add_github.save_title": "💾 Сохранить репозиторий", "sidebar.add_github.save_prompt": "Вы хотите сохранить репозиторий локально?", "sidebar.add_github.clone_dialog": "📂 Выберите папку для клонирования", "sidebar.integration.title": "✅ Интеграция", "sidebar.error.title": "❌ Ошибка", "sidebar.cli_integration.title": "✅ CLI Интеграция", "sidebar.patch_error.title": "❌ Ошибка патча", "sidebar.patch_error.message": "Не выбрано ни одного патча для применения.", "sidebar.new_preset.title": "💾 Новый пресет", "sidebar.new_preset.prompt": "Введите название пресета:", "sidebar.new_preset.name_taken": "Пресет с таким именем уже существует.", "sidebar.delete_preset.system_preset": "Нельзя удалить системный пресет.", "sidebar.new_prompt.title": "💾 Новый пресет промпта", "sidebar.new_prompt.prompt": "Введите название пресета промпта:", "sidebar.new_prompt.name_taken": "Пресет с таким именем уже существует.", "sidebar.delete_prompt.system_preset": "Нельзя удалить системный пресет.", "sidebar.open_folder.error": "Не удалось открыть папку: {error}", "sidebar.import_theme.title": "📥 Импортировать тему", "sidebar.success.title": "✅ Успех", "sidebar.import_theme.success": "Тема \"{filename}\" успешно импортирована.", "sidebar.import_theme.error": "Ошибка импорта темы: {error}", "action_panel.minify": "Минифицировать", "action_panel.chk_minify": "Минифицировать", "action_panel.no_comments": "Без комментариев", "action_panel.chk_comments": "Без комментариев", "action_panel.no_secrets": "Без секретов", "action_panel.chk_secrets": "Без секретов", "action_panel.skeleton": "Скелет", "action_panel.chk_skeleton": "Скелет", "action_panel.template.tooltip": "📁 Выбрать Jinja2 шаблон", "action_panel.preview.button": "👁 Предпросмотр", "action_panel.clipboard.button": "📋 Копировать", "action_panel.chat.button": "💬 Чат", "action_panel.editor.button": "📝 Редактор", "action_panel.editor.tooltip": "📝 Открыть в редакторе", "action_panel.file.button": "💾 Файл", "action_panel.chk_dedup": "Дедупликация", "action_panel.chk_aggressive": "Агрессивная", "action_panel.chk_checkpoints": "Контр. точки", "action_panel.chk_watch": "Авто-слежка", "action_panel.template.dialog_title": "Выберите Jinja2 шаблон", "action_panel.plugins.button": "🔌 Плагины", "empty_state.drop.title": "📂 Перетащите папку сюда", "empty_state.drop.subtitle": "или нажмите кнопку ниже", "empty_state.browse.button": "📂 Выбрать папку", "empty_state.recent.title": "🕐 Недавние проекты", "empty_state.browse.dialog_title": "📂 Выберите папку проекта", "status_bar.idle": "Ожидание", "status_bar.tokens_count": "Токены: {tokens}", "status_bar.tokens": "Токены: {tokens}", "status_bar.local_model": " (локальная модель)", "analytics_panel.header.file": "Файл", "analytics_panel.header.tokens": "Токены", "analytics_panel.header.weight": "Вес", "file_tree.search.placeholder": "🔍 Поиск файла...", "file_tree.expand_all": "▶ Развернуть всё", "file_tree.collapse_all": "▼ Свернуть всё", "file_tree.exclude_tests": "🧪 Исключить тесты", "file_tree.git_modified": "🔵 Изменённые (Git)", "file_tree.icon.dependency": "📦", "file_tree.icon.huge": "🔴", "file_tree.icon.heavy": "🟠", "file_tree.context.copy_no_deps": "📋 Копировать (без зависимостей)", "file_tree.context.copy_shallow": "📋 Копировать (поверхностно)", "file_tree.context.copy_deep": "📋 Копировать (глубоко)", "file_tree.context.select_py": "🐍 Только .py", "file_tree.context.select_js": "🌐 Только JS/TS", "file_tree.context.exclude_heavy": "🚫 Исключить тяжёлые", "file_tree.context.exclude_all": "🚫 Исключить все", "folder_list.no_sources": "📂 Нет добавленных папок", "folder_list.edit.tooltip": "✏️ Редактировать путь", "folder_list.delete.tooltip": "🗑 Удалить", "formatting.hidden_lines": "... {c_start} идентичных строк скрыто ...", "main_controller.clear_temp_files": "🧹 Очистка временных папок...", "main_controller.choose_folders": "⚠️ Выберите хотя бы одну папку.", "main_controller.choose_folders_or_url": "⚠️ Выберите папку или укажите URL.", "main_controller.read_file_error": "❌ Ошибка чтения файла: {target_file}", "main_controller.use_copy_deps_use_case": "📋 Копирование с зависимостями (режим: {mode})...", "main_controller.no_folders_config": "⚠️ Нет выбранных папок для сохранения конфига.", "main_controller.scan_first": "⚠️ Сначала выполните сканирование.", "main_controller.no_files_in_log": "⚠️ Ни один файл не совпадает с логом.", "main_controller.files_matched": "✅ Совпало файлов: {count}", "main_controller.copied_to_clipboard": "📋 Скопировано в буфер обмена", "main_controller.copied_tokens": "📋 Скопировано {tokens} токенов", "main_controller.clipboard_error": "❌ Ошибка копирования: {error}", "main_controller.clipboard_error_generic": "❌ Ошибка копирования в буфер обмена", "main_controller.pr_filter_applied": "🔍 Применён PR-фильтр: {count} файлов", "cli_controller.starting": "🚀 Запуск CLI (режим: {mode})", "cli_controller.target": "🎯 Цель: {target_path}", "cli_controller.critical_error": "❌ Критическая ошибка: {exc}", "cli_controller.safety_patch_mode": "🛡 Безопасный режим применения патчей", "cli_controller.patch_target": "📂 Цель: {target_path}", "cli_controller.patch_file": "📄 Файл патча: {patch_file}", "cli_controller.patch_file_not_found": "❌ Файл патча не найден: {patch_file}", "cli_controller.patches_invalid": "❌ Не удалось распарсить ни одного патча.", "cli_controller.patch_skipped": "⏭ Пропущен: {file_target} — {msg}", "cli_controller.changes_for": "📋 Изменения для {file_target} ({action}):", "cli_controller.apply_prompt": "Применить? [Y/n/q]: ", "cli_controller.skipped": "⏭ Пропущено", "cli_controller.cancelled": "🚫 Отменено пользователем", "cli_controller.invalid_choice": "❌ Некорректный ввод. Введите y/n/q.", "cli_controller.no_patches": "❌ Нет патчей для применения.", "cli_controller.applying_patches": "⚙️ Применение {count} патчей...", "cli_controller.applied_count": "✅ Применено: {applied}", "cli_controller.no_changes": "ℹ️ Изменений нет.", "cli_controller.no_files_found": "❌ Файлы не найдены.", "cli_controller.token_limit_exceeded": "❌ Превышен лимит токенов: {tokens} / {limit}", "cli_controller.dry_run_header": "📋 Сухой прогон (Dry Run)", "cli_controller.files_found": "📄 Найдено файлов: {count}", "cli_controller.estimated_volume": "📊 Примерный объём: {tokens} токенов", "cli_controller.fetching_prices": "💰 Получение цен...", "cli_controller.cost_estimate": "💰 Оценка стоимости ({model}): ${cost:.6f}", "cli_controller.free_or_local": "💰 Модель {model} — бесплатная или локальная", "cli_controller.project_copied": "📋 Скопировано {tokens} токенов", "cli_controller.path_not_found": "❌ Путь не найден: {path}", "cli_controller.window_closing": "⏳ Окно закроется через 3 секунды...", "store.status.done": "✅ Готово", "store.status.scan_error": "❌ Ошибка сканирования: {error}", "store.status.scan_error_log": "Ошибка: {error}", "store.status.workspace_cleared": "🧹 Рабочее пространство очищено", "store.status.repo_loaded": "✅ Репозиторий загружен", "store.status.clone_error": "❌ Ошибка клонирования", "store.status.files_found": "📄 Найдено файлов: {count}", "store.status.error_with_msg": "❌ Ошибка: {error_msg}", "state.status.ready": "✅ Готов к работе", "process_use_case.workflow.preparing": "⚙️ Подготовка...", "process_use_case.workflow.no_files": "⚠️ Нет файлов для обработки.", "process_use_case.workflow.reading": "📖 Чтение {count} файлов...", "process_use_case.workflow.analyzing": "🔍 Анализ зависимостей...", "process_use_case.workflow.processing_minifying": "⚙️ Обработка и минификация...", "process_use_case.workflow.formatting": "📝 Форматирование...", "process_use_case.workflow.saving": "💾 Сохранение...", "process_use_case.workflow.writing": "✍️ Запись файла...", "process_use_case.workflow.done": "✅ Готово ({count} токенов)", "process_use_case.workflow.error": "❌ Ошибка: {error}", "process_use_case.export.editor": "📝 Открыто в редакторе", "process_use_case.export.chat_loaded": "💬 Загружено в чат", "process_use_case.export.saved": "💾 Сохранено: {path}", "process_use_case.export.pdf_created": "📄 PDF создан: {path}", "patch_use_case.patch.empty": "⚠️ Пустой патч.", "patch_use_case.parsing.parsing_llm": "🔍 Парсинг ответа LLM...", "patch_use_case.parsing.parse_error": "⚠️ Ошибка парсинга JSON: {error}", "patch_use_case.parsing.no_valid_json": "❌ Не найден валидный JSON.", "patch_use_case.patch.preparing": "⚙️ Подготовка {count} патчей...", "patch_use_case.patch.applied": "✅ Применено патчей: {count}", "llm_checker.send.no_url": "⚠️ LLM URL не настроен.", "llm_checker.check.disabled": "Проверка LLM отключена в настройках.", "llm_checker.check.no_url_short": "LLM URL не настроен", "llm_checker.check.invalid_json": "Неверный JSON ответ от LLM", "patch_service.prepare.missing_file": "Не указан файл для патча.", "patch_service.prepare.no_folders": "Нет базовых папок для поиска файлов.", "patch_service.prepare.created": "✅ Будет создан: {clean_target}", "patch_service.prepare.not_found": "❌ Файл не найден: {file_target}", "patch_service.prepare.will_delete": "⚠️ Будет удалён", "patch_service.prepare.deleted": "✅ Будет удалён: {basename}", "patch_service.prepare.appended": "✅ Данные добавлены в: {basename}", "patch_service.prepare.prepended": "✅ Данные добавлены в начало: {basename}", "patch_service.prepare.empty_search": "❌ Пустой поисковый запрос.", "patch_service.prepare.search_not_found": "❌ Текст для поиска не найден.", "patch_service.prepare.replaced": "✅ Заменено в: {basename}", "patch_service.prepare.inserted_before": "✅ Вставлено перед в: {basename}", "patch_service.prepare.inserted_after": "✅ Вставлено после в: {basename}", "patch_service.prepare.unknown_action": "❌ Неизвестное действие: {action}", "patch_service.prepare.fuzzy_match": " (нечёткое совпадение: {fuzzy_marker:.0%})", "patch_service.apply.error": "❌ Ошибка применения патча к {file_target}: {e}", "output_service.clipboard.linux_install": "Для работы с буфером обмена на Linux установите: sudo apt install xclip", "output_service.clipboard.copy_error": "Ошибка копирования в буфер: {error}", "output_service.editor.open_error": "Не удалось открыть редактор '{editor_cmd}': {error}", "updater_service.check.no_description": "Описание отсутствует", "updater_service.check.github_api_error": "Ошибка GitHub API (код {code})", "updater_service.check.connection_error": "Ошибка подключения: {error}", "updater_service.download.not_compiled": "Автообновление доступно только в скомпилированной версии.", "updater_service.download.no_app_in_archive": "Не найден .app в архиве", "updater_service.download.download_failed": "Ошибка загрузки: {error}", "github_service.invalid_url": "Некорректный URL", "github_use_case.preparing": "Подготовка GitHub...", "github_use_case.pr_detected": "🐙 Обнаружен Pull Request. Получение списка файлов...", "github_use_case.pr_files_count": "Получено {count} файлов из PR.", "github_use_case.cloning": "Клонирование репозитория...", "github_use_case.cloning_url": "GitHub: клонирование {url}", "github_use_case.repo_loaded": "✅ Репозиторий загружен: {path}", "github_use_case.github_error": "❌ Ошибка GitHub: {error}", "updater_use_case.checking": "🔍 Проверка обновлений на GitHub (v{version})...", "updater_use_case.connecting": "Связь с сервером GitHub. Пожалуйста, подождите...", "updater_use_case.update_found": "🎉 Найдена новая версия: {version}", "updater_use_case.up_to_date": "✅ У вас установлена самая актуальная версия.", "updater_use_case.no_updates": "Обновлений не найдено.\n\nВы используете самую актуальную версию приложения.", "updater_use_case.check_error": "❌ Ошибка проверки: {error}", "updater_use_case.check_error_notes": "**Не удалось проверить обновления.**\n\nПроверьте подключение к сети или лимиты GitHub API.\n\n`{error}`", "updater_use_case.download_starting": "⬇️ Начало загрузки обновления...", "updater_use_case.download_progress": "Загрузка: {percent}%", "updater_use_case.update_installed": "✅ Обновление установлено. Выполняется перезапуск...", "updater_use_case.restarting": "Перезапуск...", "updater_use_case.install_error": "❌ Ошибка установки: {error}", "updater_use_case.install_error_notes": "**Сбой при загрузке или установке обновления.**\n\nОткат изменений выполнен успешно.\n\n`{error}`", "settings_use_case.reset": "Настройки сброшены", "settings_use_case.local_config_applied": "⚙️ Применены локальные настройки из: {path}", "settings_use_case.config_parse_error": "⚠️ Ошибка парсинга {path}: {error}", "settings_use_case.config_read_error": "⚠️ Не удалось прочитать локальный конфиг: {error}", "settings_use_case.no_folder_selected": "❌ Ошибка: Папка проекта не выбрана.", "settings_use_case.config_saved": "✅ Локальный конфиг сохранен: {path}", "settings_use_case.config_save_error": "❌ Ошибка сохранения локального конфига: {error}", "settings_use_case.workspace_saved": "Workspace сохранён: {path}", "settings_use_case.workspace_save_error": "Ошибка сохранения Workspace: {error}", "settings_use_case.workspace_loaded": "Workspace загружен: {path}", "settings_use_case.workspace_load_error": "Ошибка загрузки Workspace: {error}", "scan_use_case.scanning": "Сканирование...", "scan_use_case.scan_started": "Начало сканирования...", "scan_use_case.no_files": "⚠️ Файлы не найдены", "scan_use_case.analyzing": "Анализ токенов и Git...", "scan_use_case.scan_complete": "Сканирование завершено", "tour_service.welcome.title": "👋 Добро пожаловать в CodeContext AI!", "tour_service.welcome.text": "CodeContext AI — это инструмент для анализа кодовой базы. Он сканирует ваш проект, собирает контекст и позволяет отправить его в LLM для анализа, чата или создания патчей.\n\nНажмите «Далее», чтобы узнать о возможностях.", "tour_service.folders_pr.title": "📂 Папки и GitHub PR", "tour_service.folders_pr.text": "Добавьте локальные папки через кнопку «Добавить папку» или клонируйте GitHub репозиторий по URL.\n\nПоддерживаются Pull Request'ы — сканируются только файлы из PR.", "tour_service.filtering.title": "🔧 Фильтрация файлов", "tour_service.filtering.text": "Настройте расширения файлов, пути для игнорирования и пресеты фильтрации.\n\nВключите Git-режим для сканирования только изменённых файлов.", "tour_service.compression.title": "⚙️ Сжатие и Minify", "tour_service.compression.text": "Включите Minify для удаления лишних пробелов, «No Comments» для удаления комментариев и «No Secrets» для маскировки ключей API.\n\nРежим «Skeleton» оставляет только заглушки функций.", "tour_service.architecture.title": "🌳 Архитектура проекта", "tour_service.architecture.text": "Включите дерево проекта, граф зависимостей и Mermaid-диаграмму для визуализации архитектуры вашего кода.", "tour_service.editor_preview.title": "👁 Предпросмотр и Diff", "tour_service.editor_preview.text": "Используйте «Предпросмотр», чтобы увидеть итоговый промпт. Вкладка «Diff» показывает сравнение оригиналов и обработанных файлов.\n\nКопируйте отдельные файлы или всё сразу.", "tour_service.local_llm.title": "💻 Локальные LLM", "tour_service.local_llm.text": "Подключите локальные LLM (Ollama, LM Studio) или облачные API (OpenAI).\n\nLLM используется для проверки патчей и чата по коду.", "tour_service.ai_chat.title": "💬 AI Чат", "tour_service.ai_chat.text": "Чат-диалог с LLM, куда автоматически встроен контекст всего проекта.\n\nЗадавайте вопросы по коду, просите рефакторинг или генерацию.", "tour_service.patcher.title": "🔧 JSON-патчер", "tour_service.patcher.text": "Сгенерируйте JSON-патч через LLM и примените его к файлам проекта.\n\nПоддерживаются: replace, create, delete, append, prepend, insert_before, insert_after.", "tour_service.safety_diff.title": "🛡 Безопасность Diff", "tour_service.safety_diff.text": "Каждый патч проходит предпросмотр Diff. Вы можете проверить изменения через LLM.\n\nПринимайте или отклоняйте изменения точечно.", "tour_service.os_integration.title": "🖥 Интеграция с ОС", "tour_service.os_integration.text": "Установите контекстное меню («CodeContext AI» по правому клику на папке) и глобальный CLI.\n\nДля Windows: работает через реестр. Для macOS: через Automator. Для Linux: через .desktop файлы.", "integration_strategies.windows.elevate_error": "❌ Ошибка при запросе прав администратора: {exc}", "integration_strategies.windows.admin_required_install": "⚠️ Для установки контекстного меню требуются права администратора. Запустите приложение от имени администратора.", "integration_strategies.windows.menu_open_ui": "Открыть CodeContext AI", "integration_strategies.windows.menu_copy_default": "Копировать контекст (по умолчанию)", "integration_strategies.windows.menu_copy_deep": "Копировать контекст (глубоко)", "integration_strategies.windows.menu_copy_xml": "Копировать контекст (XML)", "integration_strategies.windows.menu_copy_skeleton": "Копировать контекст (Skeleton)", "integration_strategies.windows.install_success": "✅ Контекстное меню установлено.", "integration_strategies.windows.install_error": "❌ Ошибка установки контекстного меню: {error}", "integration_strategies.windows.admin_required_remove": "⚠️ Для удаления контекстного меню требуются права администратора.", "integration_strategies.windows.remove_access_error": "❌ Нет доступа к реестру: {error}", "integration_strategies.windows.remove_registry_error": "❌ Ошибка удаления из реестра: {error}", "integration_strategies.windows.remove_success": "✅ Контекстное меню удалено.", "integration_strategies.windows.cli_install_success": "✅ CLI установлен глобально.", "integration_strategies.windows.cli_install_error": "❌ Ошибка установки CLI: {error}", "integration_strategies.windows.cli_remove_success": "✅ CLI удалён.", "integration_strategies.windows.cli_remove_error": "❌ Ошибка удаления CLI: {error}", "integration_strategies.linux.menu_open_ui": "Открыть CodeContext AI", "integration_strategies.linux.menu_copy_xml": "Копировать контекст (XML)", "integration_strategies.linux.menu_copy_skeleton": "Копировать контекст (Skeleton)", "integration_strategies.linux.install_success": "✅ Контекстное меню установлено.", "integration_strategies.linux.install_error": "❌ Ошибка установки контекстного меню: {error}", "integration_strategies.linux.remove_success": "✅ Контекстное меню удалено.", "integration_strategies.linux.remove_error": "❌ Ошибка удаления контекстного меню: {error}", "integration_strategies.linux.cli_install_success": "✅ CLI установлен глобально.", "integration_strategies.linux.cli_install_error": "❌ Ошибка установки CLI: {error}", "integration_strategies.linux.cli_remove_success": "✅ CLI удалён.", "integration_strategies.linux.cli_remove_error": "❌ Ошибка удаления CLI: {error}", "integration_strategies.macos.install_success": "✅ Контекстное меню установлено.", "integration_strategies.macos.install_error": "❌ Ошибка установки контекстного меню: {error}", "integration_strategies.macos.remove_success": "✅ Контекстное меню удалено.", "integration_strategies.macos.remove_error": "❌ Ошибка удаления контекстного меню: {error}", "sidebar.tab.plugins": "🔌 Плагины", "sidebar.plugins.open_folder": "📂 Открыть папку плагинов", "sidebar.plugins.restart_required": "⚠️ Требуется перезапуск", "sidebar.plugins.restart_msg": "Пожалуйста, перезапустите приложение, чтобы изменения плагинов вступили в силу.", "sidebar.hide_tab": "👁 Скрыть вкладку" }