fix(cli): localize existing-server prompts for Chinese launcher
This commit is contained in:
1 parent
c6d2050ff0
commit
506e3bf1c5
3 files changed
+126
-11
No files matched your search
@@ -15,6 +15,7 @@
|
||||
"""UI Launch and Web Console CLI Command (artemis ui)."""
|
||||
|
||||
import logging
|
||||
import os
|
||||
from pathlib import Path
|
||||
import re
|
||||
import shutil
|
||||
@@ -34,6 +35,11 @@ import typer
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
def _launch_text(english: str, chinese: str) -> str:
|
||||
"""Honor the language selected by the Windows launch wrapper."""
|
||||
return chinese if os.environ.get("ARTEMIS_LAUNCH_LANG") == "zh-CN" else english
|
||||
|
||||
|
||||
def running_via_console_script_shim() -> bool:
|
||||
"""Return True when this CLI was launched through a console-script ``.exe`` shim.
|
||||
|
||||
@@ -308,7 +314,12 @@ def ui_command(
|
||||
)
|
||||
|
||||
if restart:
|
||||
console.print(f" [yellow]🔄 Restart requested. Recycling port {port}...[/yellow]")
|
||||
console.print(
|
||||
_launch_text(
|
||||
f" [yellow]🔄 Restart requested. Recycling port {port}...[/yellow]",
|
||||
f" [yellow]🔄 已请求重启,正在释放端口 {port}...[/yellow]",
|
||||
)
|
||||
)
|
||||
load_session_reconciler()
|
||||
stop_server(port=port, timeout=12.0)
|
||||
elif is_port_in_use(port):
|
||||
@@ -316,19 +327,39 @@ def ui_command(
|
||||
pid_str = f" (PID: {', '.join(map(str, pids))})" if pids else ""
|
||||
if sys.stdin.isatty():
|
||||
console.print(
|
||||
f"\n [yellow]⚠ Port {port} is already in use by an active Artemis server{pid_str}.[/yellow]"
|
||||
_launch_text(
|
||||
f"\n [yellow]⚠ Port {port} is already in use by an active Artemis server{pid_str}.[/yellow]",
|
||||
f"\n [yellow]⚠ 检测到 ARTEMIS 服务正在运行,占用端口 {port}{pid_str}。[/yellow]",
|
||||
)
|
||||
)
|
||||
console.print(" [dim]Choose an action:[/dim]")
|
||||
console.print(" [bold]1[/bold] Open browser (default)")
|
||||
console.print(" [bold]2[/bold] Restart server (stop existing and start here)")
|
||||
console.print(" [bold]3[/bold] Cancel")
|
||||
console.print(
|
||||
_launch_text(" [dim]Choose an action:[/dim]", " [dim]请选择操作:[/dim]")
|
||||
)
|
||||
console.print(
|
||||
_launch_text(
|
||||
" [bold]1[/bold] Open browser (default)",
|
||||
" [bold]1[/bold] 打开浏览器(默认)",
|
||||
)
|
||||
)
|
||||
console.print(
|
||||
_launch_text(
|
||||
" [bold]2[/bold] Restart server (stop existing and start here)",
|
||||
" [bold]2[/bold] 重启服务(停止现有服务并在此启动,会中断正在运行的任务)",
|
||||
)
|
||||
)
|
||||
console.print(_launch_text(" [bold]3[/bold] Cancel", " [bold]3[/bold] 取消"))
|
||||
try:
|
||||
choice = input(" Select [1-3, default 1]: ").strip()
|
||||
choice = input(
|
||||
_launch_text(" Select [1-3, default 1]: ", " 请输入选项 [1-3,默认 1]:")
|
||||
).strip()
|
||||
except (KeyboardInterrupt, EOFError):
|
||||
choice = "1"
|
||||
if choice == "2":
|
||||
console.print(
|
||||
f"\n [yellow]🔄 Terminating previous Artemis instance on port {port}...[/yellow]"
|
||||
_launch_text(
|
||||
f"\n [yellow]🔄 Terminating previous Artemis instance on port {port}...[/yellow]",
|
||||
f"\n [yellow]🔄 正在停止端口 {port} 上的现有 ARTEMIS 服务...[/yellow]",
|
||||
)
|
||||
)
|
||||
load_session_reconciler()
|
||||
stop_server(port=port, timeout=12.0)
|
||||
@@ -340,8 +371,12 @@ def ui_command(
|
||||
return
|
||||
else:
|
||||
console.print(
|
||||
f"\n [yellow]⚠ Port {port} is already in use by Artemis{pid_str}. "
|
||||
f"Use '[bold]artemis restart[/bold]' to restart.[/yellow]\n"
|
||||
_launch_text(
|
||||
f"\n [yellow]⚠ Port {port} is already in use by Artemis{pid_str}. "
|
||||
"Use '[bold]artemis restart[/bold]' to restart.[/yellow]\n",
|
||||
f"\n [yellow]⚠ 检测到 ARTEMIS 服务正在运行,占用端口 {port}{pid_str}。"
|
||||
"如需重启,请运行 '[bold]artemis restart[/bold]'。[/yellow]\n",
|
||||
)
|
||||
)
|
||||
if open_browser:
|
||||
webbrowser.open(local_url)
|
||||
|
||||
Reference in new issue
Block a user