GRM-11: i18n: translate all remaining user-facing strings

This commit is contained in:
Emil Simeonov
2026-06-19 00:57:26 +02:00
parent b3ac955515
commit 3b68302274
3 changed files with 69 additions and 2 deletions
+1 -1
View File
@@ -339,7 +339,7 @@ def list_runners() -> None:
click.echo(_("No runners registered. Use 'grm install' to add one."))
return
click.echo(f"{'NAME':<20} {'HOST':<18} {'USER':<12} {'MODE':<8} {'STATUS'}")
click.echo(f"{_('NAME'):<20} {_('HOST'):<18} {_('USER'):<12} {_('MODE'):<8} {_('STATUS')}")
click.echo("-" * 70)
for r in runners:
click.echo(f"{r['name']:<20} {r['host']:<18} {r['user']:<12} {r['mode']:<8} {r['status']}")
+63
View File
@@ -362,6 +362,69 @@ TRANSLATIONS: dict[str, dict[str, str]] = {
"ru": "Ошибка списка: {error}",
"zh": "列表失败: {error}",
},
"NAME": {
"en": "NAME",
"bg": "ИМЕ",
"de": "NAME",
"ru": "ИМЯ",
"zh": "名称",
},
"HOST": {
"en": "HOST",
"bg": "ХОСТ",
"de": "HOST",
"ru": "ХОСТ",
"zh": "主机",
},
"USER": {
"en": "USER",
"bg": "ПОТРЕБИТЕЛ",
"de": "BENUTZER",
"ru": "ПОЛЬЗОВАТЕЛЬ",
"zh": "用户",
},
"MODE": {
"en": "MODE",
"bg": "РЕЖИМ",
"de": "MODUS",
"ru": "РЕЖИМ",
"zh": "模式",
},
"STATUS": {
"en": "STATUS",
"bg": "СТАТУС",
"de": "STATUS",
"ru": "СТАТУС",
"zh": "状态",
},
"active": {
"en": "active",
"bg": "активен",
"de": "aktiv",
"ru": "активен",
"zh": "活跃",
},
"inactive": {
"en": "inactive",
"bg": "неактивен",
"de": "inaktiv",
"ru": "неактивен",
"zh": "不活跃",
},
"failed": {
"en": "failed",
"bg": "неуспешен",
"de": "fehlgeschlagen",
"ru": "сбой",
"zh": "失败",
},
"unknown": {
"en": "unknown",
"bg": "неизвестен",
"de": "unbekannt",
"ru": "неизвестно",
"zh": "未知",
},
}
+5 -1
View File
@@ -229,13 +229,17 @@ class RunnerManager:
service_status = lines[-1].strip() if lines else "unknown"
except Exception:
service_status = "unknown"
# Translate known systemd status values
translated_status = _(
service_status if service_status in {"active", "inactive", "failed", "unknown"} else "unknown"
)
result.append(
{
"name": name,
"host": host,
"user": user,
"mode": mode,
"status": service_status,
"status": translated_status,
}
)
return result