224 files
This commit is contained in:
1 parent
b5723aa856
commit
e36b8a1a22
224 files changed
+9967
-2663
No files matched your search
@@ -28,7 +28,9 @@
|
||||
"awaiting_n": "Ожидает одобрения · {n} подтверждено",
|
||||
"approved": "Одобрено",
|
||||
"awaiting": "Ожидает одобрения",
|
||||
"imported_tip": "Импортировано из магазина сообщества. Используется только для сопоставления, не учитывается в статистике."
|
||||
"imported_tip": "Импортировано из магазина сообщества. Используется только для сопоставления, не учитывается в статистике.",
|
||||
"not_importable": "недоступно",
|
||||
"exists": "существует"
|
||||
},
|
||||
"btn": {
|
||||
"add_device": "+ Добавить устройство",
|
||||
@@ -169,7 +171,14 @@
|
||||
"download_device": "Скачать конфигурацию устройства",
|
||||
"share_device": "Поделиться конфигурацией устройства",
|
||||
"share_device_tip": "Поделиться программами и настройками этого устройства с сообществом",
|
||||
"share_n": "Поделиться: {n} программ{s}"
|
||||
"share_n": "Поделиться: {n} программ{s}",
|
||||
"export_selected": "Экспорт (выбрать данные)",
|
||||
"export_all": "Быстрый экспорт всего",
|
||||
"import_raw": "Расширенно: заменить всё из JSON",
|
||||
"download_export": "Скачать экспорт",
|
||||
"analyze_import": "Анализировать файл",
|
||||
"import_selected": "Импортировать выбранное",
|
||||
"back": "Назад"
|
||||
},
|
||||
"conflict": {
|
||||
"anti_wrinkle_exit": {
|
||||
@@ -401,6 +410,7 @@
|
||||
"pg_group_detection": "Триггеры обнаружения",
|
||||
"pg_group_timing": "Правила времени",
|
||||
"pg_idle": "Ожидание",
|
||||
"pg_anti_wrinkle": "Защита от морщин",
|
||||
"pg_last_run": "Последний запуск: {date}",
|
||||
"pg_match_score": "Оценка совпадения",
|
||||
"pg_pct_of": "{p}% из {total}",
|
||||
@@ -538,6 +548,15 @@
|
||||
"aria_playground_chart2": "Интерактивный график мощности цикла: наведите, чтобы увидеть время/мощность, прокрутите для масштабирования, перетащите для панорамирования",
|
||||
"pg_alert_timeout_end": "Завершено по тайм-ауту, а не по прогнозу",
|
||||
"pg_alert_indefinite": "Работал бы бесконечно",
|
||||
"pg_alert_stress_cap": "Достигнут защитный лимит",
|
||||
"pg_alert_stress_ok": "Обнаружен режим ожидания: цикл остановлен",
|
||||
"pg_alert_stress_warn": "Потребление в режиме ожидания выше порога остановки",
|
||||
"pg_stress_group": "Тест обнаружения режима ожидания",
|
||||
"pg_stress_idle_auto": "Auto",
|
||||
"pg_stress_idle_w": "Уровень в режиме ожидания (Вт)",
|
||||
"pg_stress_idle_w_desc": "Переопределить автоматически обнаруженный нижний порог потребления в режиме ожидания (оставьте пустым для автоматического определения).",
|
||||
"pg_stress_toggle": "Тестировать обнаружение режима ожидания",
|
||||
"pg_stress_toggle_desc": "Имитирует работу устройства в режиме ожидания после завершения записи -- показывает, остановит ли и когда WashData цикл.",
|
||||
"task_pg_history": "Тест на истории",
|
||||
"task_pg_sweep": "Оптимизация",
|
||||
"task_reprocess": "Повторная обработка",
|
||||
@@ -566,7 +585,31 @@
|
||||
"task_split": "Разделение цикла",
|
||||
"task_trim": "Обрезка цикла",
|
||||
"task_merge": "Объединение циклов",
|
||||
"task_rebuild": "Пересчёт огибающих"
|
||||
"task_rebuild": "Пересчёт огибающих",
|
||||
"cat_profiles": "Профили (программы)",
|
||||
"cat_real_cycles": "Циклы (история запусков)",
|
||||
"cat_reference_cycles": "Справочные циклы (импортированные)",
|
||||
"cat_custom_phases": "Пользовательские фазы",
|
||||
"cat_profile_groups": "Группы профилей",
|
||||
"cat_settings": "Настройки обнаружения и распознавания",
|
||||
"cat_matching_config": "Тонкая настройка распознавания",
|
||||
"cat_ml_models": "ML-модели",
|
||||
"cat_feedback": "Отзывы и метки проверки",
|
||||
"cat_suggestions": "Предложения",
|
||||
"cat_maintenance_log": "Журнал обслуживания",
|
||||
"cat_history_logs": "Журналы истории и изменений",
|
||||
"cat_lifetime_stats": "Итоги за всё время",
|
||||
"cycles_short": "циклов",
|
||||
"import_mode": "Как объединить",
|
||||
"mode_merge": "Объединить (сохранить мои)",
|
||||
"mode_replace": "Заменить выбранное",
|
||||
"cycle_destination": "Куда поместить импортированные циклы?",
|
||||
"dest_reference": "Справочные (только форма)",
|
||||
"dest_real_history": "Реальная история (учитывается в статистике)",
|
||||
"conflict_resolution": "Конфликты имён",
|
||||
"conflict_import_copy": "Импортировать как копию",
|
||||
"conflict_keep_mine": "Сохранить мои",
|
||||
"conflict_overwrite": "Перезаписать"
|
||||
},
|
||||
"log": {
|
||||
"all_levels": "Все уровни",
|
||||
@@ -643,7 +686,9 @@
|
||||
"force_stop_msg": "Принудительно остановить активный цикл сейчас? Цикл будет сохранён как прерванный.",
|
||||
"store_import": "Импорт эталонного цикла",
|
||||
"store_share": "Поделиться в магазине сообщества",
|
||||
"store_share_device": "Поделиться конфигурацией устройства"
|
||||
"store_share_device": "Поделиться конфигурацией устройства",
|
||||
"export_select": "Экспорт - выбор данных",
|
||||
"import_wizard": "Импорт - выбор данных"
|
||||
},
|
||||
"msg": {
|
||||
"appliance_monitor": "Монитор прибора",
|
||||
@@ -665,9 +710,10 @@
|
||||
"coverage_gap_similar_cycles": "Найдено {count} похожих непомеченных циклов – создайте профиль, чтобы начать их сопоставление.",
|
||||
"cycles_deleted": "Удалено циклов: {count}",
|
||||
"enough_data": "Достаточно данных для обучения ({current}/{min} циклов).",
|
||||
"export_description": "Экспортируйте все профили и циклы в JSON или восстановите данные из предыдущего экспорта.",
|
||||
"export_description": "Выберите, какие именно профили, циклы, настройки и прочее экспортировать в JSON, или проанализируйте файл и импортируйте только нужные части.",
|
||||
"feedback_cycles_pending": "{n} цикл{s} для проверки",
|
||||
"feedback_prompt": "Подтвердите правильность, исправьте программу или проигнорируйте.",
|
||||
"feedback_relabel_hint": "Повторная маркировка этого цикла также решает его.",
|
||||
"filter_by_profile": "Фильтр по профилю…",
|
||||
"group_modal_help": "Групповые программы одинаковой формы, отличающиеся температурой/отжимом (продолжительность может варьироваться). При сопоставлении группа оценивается как один кандидат, а затем выбирается наиболее подходящий член. Выберите хотя бы 2; наложение показывает, насколько они похожи.",
|
||||
"group_not_cohesive": "Эти профили недостаточно похожи, чтобы их можно было надежно сгруппировать, поэтому сопоставление обрабатывает их индивидуально, пока вы не удалите выброс или не разделите группу.",
|
||||
@@ -729,6 +775,7 @@
|
||||
"pg_restart_note": "Перезапустите Home Assistant, чтобы включить инструменты симуляции.",
|
||||
"pg_sim_progress": "{done} / {total} циклов",
|
||||
"pg_starting": "Запуск…",
|
||||
"pg_stress_synthetic": "здесь начинается симуляция режима ожидания",
|
||||
"pg_sweep_intro": "Что если бы {param} было другим? Проверьте {steps} значений на ваших последних {cycles} циклах, чтобы найти настройку, при которой правильно сопоставляется больше всего циклов.",
|
||||
"pg_sweep_step": "Шаг {done} / {total}",
|
||||
"pg_undetected": "{n} цикл{s} не обнаружено",
|
||||
@@ -837,6 +884,9 @@
|
||||
"pg_simulating": "Моделирование цикла…",
|
||||
"pg_canvas_empty2": "Выберите цикл выше и нажмите «Запустить», чтобы смоделировать его. Затем наведите указатель, чтобы увидеть значения, прокрутите для масштабирования и перетащите для панорамирования.",
|
||||
"pg_apply_settings_confirm": "Сохранить эти настройки ({n}) в это устройство? {list}",
|
||||
"pg_stress_terminated_detail": "Стабилизировалось на ~{idle}W в режиме ожидания -- цикл завершился {h} ч {m} мин позже через {reason}.",
|
||||
"pg_stress_above_threshold_detail": "Потребление в режиме ожидания ~{idle}W равно или выше фактического порога остановки ({stop}W) -- цикл так и не был зафиксирован как неактивный. Чтобы исправить, увеличьте stop_threshold_w.",
|
||||
"pg_stress_hit_cap_detail": "Цикл работал {h} ч {m} мин без остановки -- принудительно остановлен защитным лимитом. Потребление в режиме ожидания {idle}W по сравнению с порогом остановки {stop}W.",
|
||||
"no_logs_match": "Нет записей журнала, соответствующих этим фильтрам.",
|
||||
"pg_analysis_hint2": "Выберите цикл и нажмите Запустить, чтобы загрузить анализ совпадения.",
|
||||
"pg_analysis_empty2": "Нажмите Запустить, чтобы увидеть анализ совпадения.",
|
||||
@@ -864,7 +914,15 @@
|
||||
"store_share_device_intro": "Поделиться программами вашего устройства (профили + эталонные циклы) с сообществом. Настройки являются необязательными.",
|
||||
"share_profile_no_cycles": "Профиль '{p}' не имеет ⭐ эталонных циклов -- он будет пропущен, если у вас нет {n}+ подтверждённых запусков",
|
||||
"advisory_phase_inconsistent": "Похоже, что '{name}' смешивает разные программы или температуры - его циклы нагреваются в течение очень разного времени. Разделение на отдельные профили (напр. по температуре) улучшит сопоставление и оценки времени.",
|
||||
"advisory_phase_inconsistent_title": "⚠ Возможно, смешанные программы"
|
||||
"advisory_phase_inconsistent_title": "⚠ Возможно, смешанные программы",
|
||||
"export_select_intro": "Отметьте, что именно включить. Выбор профилей без их циклов всё равно экспортирует распознаваемую программу (её изученная форма передаётся вместе с ней).",
|
||||
"import_analyze_hint": "Загрузите экспортированный файл (или вставьте его JSON). WashData проанализирует его и покажет, что именно можно импортировать, прежде чем что-либо изменится.",
|
||||
"analyzing": "Анализ…",
|
||||
"device_type_mismatch_warn": "Этот экспорт получен от прибора другого типа ({src} вместо {local}). Программы и циклы всё равно можно импортировать как справочные данные, но настройки, зависящие от устройства, и импорт реальной истории отключены.",
|
||||
"merge_hint": "Импортируемые элементы добавляются; ничего локального не теряется. Конфликты имён разрешаются ниже.",
|
||||
"replace_warn": "Каждая отмеченная категория очищается и заменяется данными из файла. Неотмеченные категории остаются без изменений.",
|
||||
"dest_reference_hint": "Импортированные циклы только улучшают распознавание программ и никогда не влияют на статистику использования/энергии.",
|
||||
"dest_real_history_hint": "Импортированные циклы считаются собственной историей этого устройства и учитываются в статистике энергии/использования. Используйте для переноса одного прибора в новую установку."
|
||||
},
|
||||
"phase_desc": {
|
||||
"anti_crease": "Периодические короткие вращения барабана после завершения для уменьшения складок.",
|
||||
@@ -962,6 +1020,10 @@
|
||||
"doc": "Чтобы режим защиты от морщин оставался активным, мощность должна падать ниже этого значения между импульсами.",
|
||||
"label": "Порог Мощности Выхода"
|
||||
},
|
||||
"anti_wrinkle_idle_timeout": {
|
||||
"label": "Макс. Пауза Между Импульсами",
|
||||
"doc": "Как долго машина может оставаться в тишине между двумя импульсами вращения барабана, прежде чем режим защиты от морщин завершится. Установите выше самой длинной паузы, которую ваша сушильная машина оставляет между импульсами, иначе каждый последующий импульс будет воспринят как ложный запуск."
|
||||
},
|
||||
"anti_wrinkle_max_duration": {
|
||||
"doc": "Пульс, превышающий этот, рассматривается как настоящий цикл, а не как борьба с морщинами.",
|
||||
"label": "Макс. Длительность"
|
||||
@@ -1580,7 +1642,9 @@
|
||||
"store_device_shared_partial": "Частичная публикация: {n} программ{s} загружено, {failed} пропущено",
|
||||
"store_device_shared_some_dup": "Конфигурация устройства опубликована: {n} программ{s} загружено ({dup} уже существовало)",
|
||||
"store_download_failed": "Ошибка загрузки: {error}",
|
||||
"store_download_nothing": "Нечего загружать -- все профили уже существуют на этом устройстве"
|
||||
"store_download_nothing": "Нечего загружать -- все профили уже существуют на этом устройстве",
|
||||
"export_selective_done": "Экспорт скачан",
|
||||
"import_selective_done": "Импортировано профилей: {profiles}, циклов: {cycles}"
|
||||
},
|
||||
"suggestion": {
|
||||
"both_agree": "WashData рекомендует",
|
||||
@@ -1714,6 +1778,11 @@
|
||||
"start_duration_threshold": "Секунды выше порога для подтверждения старта",
|
||||
"start_threshold_w": "Минимум ватт, чтобы считать запущенным",
|
||||
"stop_threshold_w": "Ниже этого машина считается выключенной",
|
||||
"anti_wrinkle_enabled": "Поглощать импульсы вращения барабана после основной фазы, а не считать их новыми циклами",
|
||||
"anti_wrinkle_exit_power": "Мощность между импульсами должна падать ниже этого, чтобы защита от морщин оставалась активной",
|
||||
"anti_wrinkle_idle_timeout": "Допустимая тишина между двумя импульсами вращения барабана, прежде чем защита от морщин завершится",
|
||||
"anti_wrinkle_max_duration": "Импульс длиннее этого завершает защиту от морщин и открывает новый цикл",
|
||||
"anti_wrinkle_max_power": "Импульс выше этого завершает защиту от морщин и открывает новый цикл",
|
||||
"dtw_bandwidth": "Этап 3: полоса деформации Sakoe-Chiba (0 = DTW выключен; по умолчанию 0,2 = 20% длины цикла)",
|
||||
"corr_weight": "Этап 2: баланс между формой кривой (корреляция) и уровнем мощности (MAE); по умолчанию 0,45",
|
||||
"duration_weight": "Этап 4: насколько сильно совпадение по длительности влияет на итоговый балл (по умолчанию 0,22)",
|
||||
|
||||
Reference in new issue
Block a user