diff --git a/src/elf/grafana_cli.py b/src/elf/grafana_cli.py index 741762f..e5ff03a 100644 --- a/src/elf/grafana_cli.py +++ b/src/elf/grafana_cli.py @@ -37,11 +37,16 @@ async def mutate_chinese_titles(data: Dict[str, Any]) -> None: for key, value in data.items(): if key in title_keys and isinstance(value, str) and contains_chinese(value): try: + chinese_value = value + if chinese_value.contains("--"): + idx = value.index("--") + chinese_value, _ = value[:idx] + # Translate Chinese text to English - translation = await translator.translate(value, dest='en') - data[key] = data[key] + "--" + translation.text + translation = await translator.translate(chinese_value, dest='en') + data[key] = chinese_value + "--" + translation.text - console.print(f"[dim]Translated '{value}' → '{translation.text}'[/dim]") + console.print(f"[dim]Translated '{chinese_value}' → '{translation.text}'[/dim]") except Exception as e: console.print(f"[yellow]Warning: Failed to translate '{value}': {e}[/yellow]") elif isinstance(value, dict):