feat(console): redesign the RPC reference as a novice-friendly command explorer
Replace the flat, terse command-reference table with a guided two-pane explorer built for users who don't know the RPC commands: - Search by name OR task: keyword synonyms let "balance" find getbalance, "send money" find sendtoaddress; results are ranked (name-prefix > name > keyword > desc). - Two panes (mirrors the portfolio editor): a category-grouped master list (mono names, a warning dot on consequential commands) + a rich detail pane with a plain-language explanation, a per-parameter type breakdown (string / number / json, optional dimmed), and a concrete example. - Insert into console (fills the input with a template to review + run) and, for no-parameter commands, Insert & run — with a confirm for destructive ones. Deferred via pending_submit_ so the modal needs no executor. - Keyboard: type to filter, Up/Down to move, Enter to insert; auto-focus and auto-select the top result. Data model: ConsoleCommandEntry gains details/example/keywords/destructive (C++17 defaults, so the ~60 un-enriched entries are untouched); ~20 common commands enriched and 18 consequential ones flagged. Command docs stay English (technical); the UI chrome + 7 category names are translated into all 8 languages (CJK subset rebuilt, +3 glyphs). Verified: two-pane renders on dark + light skins and at font_scale 1.5; detail pane shows explanation/params/example; danger dots + safety badge on destructive commands. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -229,6 +229,19 @@
|
||||
"console_no_daemon": "Kein Daemon",
|
||||
"console_not_connected": "Fehler: Nicht mit Daemon verbunden",
|
||||
"console_quit_note": "'quit'/'exit' werden hier nicht benötigt — schließen Sie einfach das Fenster.",
|
||||
"console_ref_cancel": "Abbrechen",
|
||||
"console_ref_destructive": "Folgenreich",
|
||||
"console_ref_example": "Beispiel",
|
||||
"console_ref_insert": "In Konsole einfügen",
|
||||
"console_ref_insert_run": "Einfügen & ausführen",
|
||||
"console_ref_no_match": "Keine Befehle gefunden.",
|
||||
"console_ref_no_params": "Erwartet keine Parameter.",
|
||||
"console_ref_optional": "optional",
|
||||
"console_ref_parameters": "Parameter",
|
||||
"console_ref_run": "Ausführen",
|
||||
"console_ref_run_confirm": "%s jetzt ausführen? Dies ist ein folgenreicher Befehl.",
|
||||
"console_ref_search_hint": "Nach Name oder Aufgabe suchen…",
|
||||
"console_ref_select_hint": "Wählen Sie einen Befehl, um zu sehen, was er tut.",
|
||||
"console_rpc_reference": "RPC-Befehlsreferenz",
|
||||
"console_rpc_trace": "RPC",
|
||||
"console_scanline": "Konsolen-Scanline",
|
||||
|
||||
@@ -229,6 +229,19 @@
|
||||
"console_no_daemon": "Sin daemon",
|
||||
"console_not_connected": "Error: No conectado al daemon",
|
||||
"console_quit_note": "'quit'/'exit' no son necesarios aquí — simplemente cierra la ventana.",
|
||||
"console_ref_cancel": "Cancelar",
|
||||
"console_ref_destructive": "Delicado",
|
||||
"console_ref_example": "Ejemplo",
|
||||
"console_ref_insert": "Insertar en la consola",
|
||||
"console_ref_insert_run": "Insertar y ejecutar",
|
||||
"console_ref_no_match": "Ningún comando coincide.",
|
||||
"console_ref_no_params": "No requiere parámetros.",
|
||||
"console_ref_optional": "opcional",
|
||||
"console_ref_parameters": "Parámetros",
|
||||
"console_ref_run": "Ejecutar",
|
||||
"console_ref_run_confirm": "¿Ejecutar %s ahora? Es un comando con consecuencias.",
|
||||
"console_ref_search_hint": "Buscar por nombre o tarea…",
|
||||
"console_ref_select_hint": "Selecciona un comando para ver qué hace.",
|
||||
"console_rpc_reference": "Referencia de Comandos RPC",
|
||||
"console_rpc_trace": "RPC",
|
||||
"console_scanline": "Líneas de consola",
|
||||
|
||||
@@ -229,6 +229,19 @@
|
||||
"console_no_daemon": "Pas de daemon",
|
||||
"console_not_connected": "Erreur : Non connecté au daemon",
|
||||
"console_quit_note": "'quit'/'exit' ne sont pas nécessaires ici — fermez simplement la fenêtre.",
|
||||
"console_ref_cancel": "Annuler",
|
||||
"console_ref_destructive": "Sensible",
|
||||
"console_ref_example": "Exemple",
|
||||
"console_ref_insert": "Insérer dans la console",
|
||||
"console_ref_insert_run": "Insérer et exécuter",
|
||||
"console_ref_no_match": "Aucune commande ne correspond.",
|
||||
"console_ref_no_params": "Ne prend aucun paramètre.",
|
||||
"console_ref_optional": "optionnel",
|
||||
"console_ref_parameters": "Paramètres",
|
||||
"console_ref_run": "Exécuter",
|
||||
"console_ref_run_confirm": "Exécuter %s maintenant ? C'est une commande à conséquences.",
|
||||
"console_ref_search_hint": "Rechercher par nom ou tâche…",
|
||||
"console_ref_select_hint": "Sélectionnez une commande pour voir ce qu'elle fait.",
|
||||
"console_rpc_reference": "Référence des commandes RPC",
|
||||
"console_rpc_trace": "RPC",
|
||||
"console_scanline": "Scanline de la console",
|
||||
|
||||
@@ -229,6 +229,19 @@
|
||||
"console_no_daemon": "デーモンなし",
|
||||
"console_not_connected": "エラー:デーモンに接続されていません",
|
||||
"console_quit_note": "ここでは 'quit'/'exit' は不要です — ウィンドウを閉じるだけで構いません。",
|
||||
"console_ref_cancel": "キャンセル",
|
||||
"console_ref_destructive": "要注意",
|
||||
"console_ref_example": "例",
|
||||
"console_ref_insert": "コンソールに挿入",
|
||||
"console_ref_insert_run": "挿入して実行",
|
||||
"console_ref_no_match": "一致するコマンドはありません。",
|
||||
"console_ref_no_params": "パラメーターは不要です。",
|
||||
"console_ref_optional": "任意",
|
||||
"console_ref_parameters": "パラメーター",
|
||||
"console_ref_run": "実行",
|
||||
"console_ref_run_confirm": "%s を今すぐ実行しますか? 影響の大きいコマンドです。",
|
||||
"console_ref_search_hint": "名前または用途で検索…",
|
||||
"console_ref_select_hint": "コマンドを選ぶと内容が表示されます。",
|
||||
"console_rpc_reference": "RPCコマンドリファレンス",
|
||||
"console_rpc_trace": "RPC",
|
||||
"console_scanline": "コンソールスキャンライン",
|
||||
|
||||
@@ -229,6 +229,19 @@
|
||||
"console_no_daemon": "데몬 없음",
|
||||
"console_not_connected": "오류: 데몬에 연결되지 않았습니다",
|
||||
"console_quit_note": "여기서는 'quit'/'exit'가 필요 없습니다 — 그냥 창을 닫으세요.",
|
||||
"console_ref_cancel": "취소",
|
||||
"console_ref_destructive": "주의",
|
||||
"console_ref_example": "예시",
|
||||
"console_ref_insert": "콘솔에 삽입",
|
||||
"console_ref_insert_run": "삽입 후 실행",
|
||||
"console_ref_no_match": "일치하는 명령이 없습니다.",
|
||||
"console_ref_no_params": "매개변수가 없습니다.",
|
||||
"console_ref_optional": "선택",
|
||||
"console_ref_parameters": "매개변수",
|
||||
"console_ref_run": "실행",
|
||||
"console_ref_run_confirm": "%s 을(를) 지금 실행할까요? 영향이 큰 명령입니다.",
|
||||
"console_ref_search_hint": "이름 또는 용도로 검색…",
|
||||
"console_ref_select_hint": "명령을 선택하면 설명이 표시됩니다.",
|
||||
"console_rpc_reference": "RPC 명령어 참조",
|
||||
"console_rpc_trace": "RPC",
|
||||
"console_scanline": "콘솔 스캔라인",
|
||||
|
||||
@@ -229,6 +229,19 @@
|
||||
"console_no_daemon": "Sem daemon",
|
||||
"console_not_connected": "Erro: Não conectado ao daemon",
|
||||
"console_quit_note": "'quit'/'exit' não são necessários aqui — basta fechar a janela.",
|
||||
"console_ref_cancel": "Cancelar",
|
||||
"console_ref_destructive": "Sensível",
|
||||
"console_ref_example": "Exemplo",
|
||||
"console_ref_insert": "Inserir no console",
|
||||
"console_ref_insert_run": "Inserir e executar",
|
||||
"console_ref_no_match": "Nenhum comando corresponde.",
|
||||
"console_ref_no_params": "Não requer parâmetros.",
|
||||
"console_ref_optional": "opcional",
|
||||
"console_ref_parameters": "Parâmetros",
|
||||
"console_ref_run": "Executar",
|
||||
"console_ref_run_confirm": "Executar %s agora? Este é um comando com consequências.",
|
||||
"console_ref_search_hint": "Pesquisar por nome ou tarefa…",
|
||||
"console_ref_select_hint": "Selecione um comando para ver o que ele faz.",
|
||||
"console_rpc_reference": "Referência de Comandos RPC",
|
||||
"console_rpc_trace": "RPC",
|
||||
"console_scanline": "Scanline do console",
|
||||
|
||||
@@ -229,6 +229,19 @@
|
||||
"console_no_daemon": "Нет daemon",
|
||||
"console_not_connected": "Ошибка: Не подключено к daemon",
|
||||
"console_quit_note": "Здесь не нужны 'quit'/'exit' — просто закройте окно.",
|
||||
"console_ref_cancel": "Отмена",
|
||||
"console_ref_destructive": "Осторожно",
|
||||
"console_ref_example": "Пример",
|
||||
"console_ref_insert": "Вставить в консоль",
|
||||
"console_ref_insert_run": "Вставить и выполнить",
|
||||
"console_ref_no_match": "Нет подходящих команд.",
|
||||
"console_ref_no_params": "Не требует параметров.",
|
||||
"console_ref_optional": "необязательно",
|
||||
"console_ref_parameters": "Параметры",
|
||||
"console_ref_run": "Выполнить",
|
||||
"console_ref_run_confirm": "Выполнить %s сейчас? Это ответственная команда.",
|
||||
"console_ref_search_hint": "Поиск по названию или задаче…",
|
||||
"console_ref_select_hint": "Выберите команду, чтобы увидеть, что она делает.",
|
||||
"console_rpc_reference": "Справочник RPC-команд",
|
||||
"console_rpc_trace": "RPC",
|
||||
"console_scanline": "Скан-линия консоли",
|
||||
|
||||
@@ -229,6 +229,19 @@
|
||||
"console_no_daemon": "无守护进程",
|
||||
"console_not_connected": "错误:未连接到守护进程",
|
||||
"console_quit_note": "这里不需要 'quit'/'exit'——直接关闭窗口即可。",
|
||||
"console_ref_cancel": "取消",
|
||||
"console_ref_destructive": "谨慎",
|
||||
"console_ref_example": "示例",
|
||||
"console_ref_insert": "插入到控制台",
|
||||
"console_ref_insert_run": "插入并运行",
|
||||
"console_ref_no_match": "没有匹配的命令。",
|
||||
"console_ref_no_params": "无需参数。",
|
||||
"console_ref_optional": "可选",
|
||||
"console_ref_parameters": "参数",
|
||||
"console_ref_run": "运行",
|
||||
"console_ref_run_confirm": "立即运行 %s?这是一个有重大影响的命令。",
|
||||
"console_ref_search_hint": "按名称或用途搜索…",
|
||||
"console_ref_select_hint": "选择一个命令以查看其功能。",
|
||||
"console_rpc_reference": "RPC 命令参考",
|
||||
"console_rpc_trace": "RPC",
|
||||
"console_scanline": "控制台扫描线",
|
||||
|
||||
Reference in New Issue
Block a user