mirror of
https://github.com/nesquena/hermes-webui.git
synced 2026-05-29 21:20:31 +00:00
Stage 318: PR #1863 — i18n: add Japanese (ja) locale bundle by @koshikai
This commit is contained in:
+108
-108
@@ -1085,24 +1085,24 @@ const LOCALES = {
|
||||
mcp_deleted: 'MCPサーバーを削除しました。',
|
||||
mcp_delete_failed: 'MCPサーバーの削除に失敗しました。',
|
||||
mcp_load_failed: 'MCPサーバーの読み込みに失敗しました。',
|
||||
mcp_restart_hint: 'Server changes are read-only here for now. Edit config.yaml and restart Hermes for changes to take effect.',
|
||||
mcp_toggle_followup: 'Enable/disable controls are intentionally deferred until MCP reload semantics are explicit.',
|
||||
mcp_status_active: 'Active',
|
||||
mcp_status_configured: 'Configured',
|
||||
mcp_status_disabled: 'Disabled',
|
||||
mcp_status_invalid_config: 'Invalid config',
|
||||
mcp_status_unknown: 'Unknown',
|
||||
mcp_tool_count: '{0} tools',
|
||||
mcp_enabled_yes: 'Enabled',
|
||||
mcp_enabled_no: 'Disabled',
|
||||
mcp_tools_title: 'MCP Tools',
|
||||
mcp_tools_desc: 'Search known tools across active MCP servers.',
|
||||
mcp_tools_search_placeholder: 'Search tools by name, server, or description…',
|
||||
mcp_tools_no_tools: 'No MCP tools are available from the active runtime inventory.',
|
||||
mcp_tools_no_matches: 'No MCP tools match your search.',
|
||||
mcp_tools_load_failed: 'Failed to load MCP tools.',
|
||||
mcp_tools_schema_empty: 'No schema parameters.',
|
||||
mcp_tools_runtime_note: 'Tool inventory only uses already-known active MCP runtime data; the WebUI does not start or probe servers.',
|
||||
mcp_restart_hint: 'ここでのサーバー変更は現状読み取り専用です。反映するには config.yaml を編集して Hermes を再起動してください。',
|
||||
mcp_toggle_followup: '有効/無効の切り替えは、MCP のリロード仕様が明確になるまで意図的に保留しています。',
|
||||
mcp_status_active: 'アクティブ',
|
||||
mcp_status_configured: '設定済み',
|
||||
mcp_status_disabled: '無効',
|
||||
mcp_status_invalid_config: '不正な設定',
|
||||
mcp_status_unknown: '不明',
|
||||
mcp_tool_count: '{0} 個のツール',
|
||||
mcp_enabled_yes: '有効',
|
||||
mcp_enabled_no: '無効',
|
||||
mcp_tools_title: 'MCP ツール',
|
||||
mcp_tools_desc: 'アクティブな MCP サーバー全体から既知のツールを検索します。',
|
||||
mcp_tools_search_placeholder: '名前、サーバー、説明でツールを検索…',
|
||||
mcp_tools_no_tools: 'アクティブなランタイムに利用可能な MCP ツールがありません。',
|
||||
mcp_tools_no_matches: '一致する MCP ツールはありません。',
|
||||
mcp_tools_load_failed: 'MCP ツールの読み込みに失敗しました。',
|
||||
mcp_tools_schema_empty: 'スキーマパラメータはありません。',
|
||||
mcp_tools_runtime_note: 'ツール一覧は既知の MCP ランタイム情報のみを使用します。WebUI はサーバーの起動や探索を行いません。',
|
||||
// PDF preview (#480)
|
||||
pdf_loading: 'PDF {0} を読み込み中…',
|
||||
pdf_too_large: 'PDF が大きすぎてインラインプレビューできません',
|
||||
@@ -1404,8 +1404,8 @@ const LOCALES = {
|
||||
session_duplicate_desc: '同じワークスペースとモデルでコピーを作成',
|
||||
session_duplicated: 'セッションを複製しました',
|
||||
session_duplicate_failed: '複製失敗: ',
|
||||
session_stop_response: 'Stop response',
|
||||
session_stop_response_desc: 'Cancel the running response for this conversation',
|
||||
session_stop_response: '応答を停止',
|
||||
session_stop_response_desc: 'この会話の実行中の応答をキャンセルします',
|
||||
session_delete: '会話を削除',
|
||||
session_delete_desc: 'この会話を完全に削除',
|
||||
session_select_mode: '選択',
|
||||
@@ -1498,69 +1498,69 @@ const LOCALES = {
|
||||
tab_memory: 'メモリ',
|
||||
tab_workspaces: 'スペース',
|
||||
tab_profiles: 'プロファイル',
|
||||
tab_kanban: 'Kanban',
|
||||
kanban_board: 'Board',
|
||||
kanban_visible_tasks: '{0} visible tasks',
|
||||
kanban_search_tasks: 'Search tasks',
|
||||
kanban_all_assignees: 'All assignees',
|
||||
kanban_all_tenants: 'All tenants',
|
||||
kanban_include_archived: 'Include archived',
|
||||
kanban_no_matching_tasks: 'No matching tasks',
|
||||
kanban_no_data: 'No Kanban data',
|
||||
kanban_unavailable: 'Kanban unavailable',
|
||||
kanban_read_only: 'Read-only view',
|
||||
kanban_empty: 'Empty',
|
||||
kanban_task: 'Task',
|
||||
kanban_no_description: 'No description',
|
||||
kanban_refresh: 'Refresh',
|
||||
kanban_status_triage: 'Triage',
|
||||
kanban_status_todo: 'Todo',
|
||||
kanban_status_ready: 'Ready',
|
||||
kanban_status_running: 'Running',
|
||||
kanban_status_blocked: 'Blocked',
|
||||
kanban_status_done: 'Done',
|
||||
kanban_comments_count: 'Comments ({0})',
|
||||
kanban_events_count: 'Events ({0})',
|
||||
kanban_links: 'Links',
|
||||
kanban_parents: 'Parents',
|
||||
kanban_children: 'Children',
|
||||
kanban_runs_count: 'Runs ({0})',
|
||||
kanban_no_comments: 'No comments',
|
||||
kanban_no_events: 'No events',
|
||||
kanban_no_runs: 'No runs',
|
||||
kanban_new_task: 'New task',
|
||||
kanban_add_comment: 'Add comment',
|
||||
kanban_only_mine: 'Only mine',
|
||||
kanban_bulk_action: 'Bulk action',
|
||||
kanban_nudge_dispatcher: 'Nudge dispatcher',
|
||||
kanban_stats: 'Stats',
|
||||
kanban_worker_log: 'Worker log',
|
||||
kanban_block: 'Block',
|
||||
kanban_unblock: 'Unblock',
|
||||
kanban_back_to_board: 'Back to board',
|
||||
kanban_lanes_by_profile: 'Lanes by profile',
|
||||
kanban_new_board: 'New board…',
|
||||
kanban_rename_board: 'Rename current board…',
|
||||
kanban_archive_board: 'Archive current board…',
|
||||
kanban_archive_board_confirm: 'Archive board "{name}"? Tasks remain on disk and the board can be restored from kanban/boards/_archived/.',
|
||||
kanban_board_archived: 'Board archived',
|
||||
kanban_board_name: 'Name',
|
||||
kanban_board_slug: 'Slug (lowercase, hyphens)',
|
||||
kanban_board_description: 'Description (optional)',
|
||||
kanban_board_icon: 'Icon (emoji, optional)',
|
||||
kanban_board_color: 'Color (optional)',
|
||||
kanban_board_name_required: 'Name is required',
|
||||
kanban_board_slug_required: 'Slug is required',
|
||||
kanban_card_start: 'start',
|
||||
kanban_card_complete: 'complete',
|
||||
kanban_card_archive: 'archive',
|
||||
kanban_unassigned: 'unassigned',
|
||||
kanban_status_archived: 'Archived',
|
||||
tab_kanban: 'カンバン',
|
||||
kanban_board: 'ボード',
|
||||
kanban_visible_tasks: '表示中のタスク: {0}',
|
||||
kanban_search_tasks: 'タスクを検索',
|
||||
kanban_all_assignees: '担当者: すべて',
|
||||
kanban_all_tenants: 'テナント: すべて',
|
||||
kanban_include_archived: 'アーカイブを含める',
|
||||
kanban_no_matching_tasks: '一致するタスクがありません',
|
||||
kanban_no_data: 'カンバンデータがありません',
|
||||
kanban_unavailable: 'カンバンを利用できません',
|
||||
kanban_read_only: '読み取り専用',
|
||||
kanban_empty: '空',
|
||||
kanban_task: 'タスク',
|
||||
kanban_no_description: '説明なし',
|
||||
kanban_refresh: '更新',
|
||||
kanban_status_triage: 'トリアージ',
|
||||
kanban_status_todo: 'ToDo',
|
||||
kanban_status_ready: '準備完了',
|
||||
kanban_status_running: '実行中',
|
||||
kanban_status_blocked: 'ブロック中',
|
||||
kanban_status_done: '完了',
|
||||
kanban_comments_count: 'コメント ({0})',
|
||||
kanban_events_count: 'イベント ({0})',
|
||||
kanban_links: 'リンク',
|
||||
kanban_parents: '親',
|
||||
kanban_children: '子',
|
||||
kanban_runs_count: '実行 ({0})',
|
||||
kanban_no_comments: 'コメントなし',
|
||||
kanban_no_events: 'イベントなし',
|
||||
kanban_no_runs: '実行なし',
|
||||
kanban_new_task: '新規タスク',
|
||||
kanban_add_comment: 'コメント追加',
|
||||
kanban_only_mine: '自分のみ',
|
||||
kanban_bulk_action: '一括操作',
|
||||
kanban_nudge_dispatcher: 'ディスパッチャーに催促',
|
||||
kanban_stats: '統計',
|
||||
kanban_worker_log: 'ワーカーログ',
|
||||
kanban_block: 'ブロック',
|
||||
kanban_unblock: 'ブロック解除',
|
||||
kanban_back_to_board: 'ボードに戻る',
|
||||
kanban_lanes_by_profile: 'プロファイル別レーン',
|
||||
kanban_new_board: '新規ボード…',
|
||||
kanban_rename_board: '現在のボード名を変更…',
|
||||
kanban_archive_board: '現在のボードをアーカイブ…',
|
||||
kanban_archive_board_confirm: 'ボード "{name}" をアーカイブしますか? タスクはディスク上に残り、kanban/boards/_archived/ から復元できます。',
|
||||
kanban_board_archived: 'ボードをアーカイブしました',
|
||||
kanban_board_name: '名前',
|
||||
kanban_board_slug: 'スラッグ (小文字・ハイフン)',
|
||||
kanban_board_description: '説明 (任意)',
|
||||
kanban_board_icon: 'アイコン (絵文字、任意)',
|
||||
kanban_board_color: '色 (任意)',
|
||||
kanban_board_name_required: '名前は必須です',
|
||||
kanban_board_slug_required: 'スラッグは必須です',
|
||||
kanban_card_start: '開始',
|
||||
kanban_card_complete: '完了',
|
||||
kanban_card_archive: 'アーカイブ',
|
||||
kanban_unassigned: '未割り当て',
|
||||
kanban_status_archived: 'アーカイブ済み',
|
||||
tab_todos: 'ToDo',
|
||||
tab_insights: 'インサイト',
|
||||
tab_dashboard: 'Hermes ダッシュボード',
|
||||
dashboard_loopback_warning: 'ダッシュボードはサーバー上のループバック専用です。サーバー上で閲覧するか、--host 0.0.0.0(安全ではありません)で再起動してください。',
|
||||
tab_logs: 'Logs',
|
||||
tab_logs: 'ログ',
|
||||
tab_settings: '設定',
|
||||
new_conversation: '新しい会話',
|
||||
filter_conversations: '会話を絞り込み...',
|
||||
@@ -1582,19 +1582,19 @@ const LOCALES = {
|
||||
personal_memory: '個人メモリ',
|
||||
current_task_list: '現在のタスクリスト',
|
||||
// Logs
|
||||
logs_title: 'Logs', // TODO: translate
|
||||
logs_file: 'File', // TODO: translate
|
||||
logs_tail: 'Tail', // TODO: translate
|
||||
logs_auto_refresh: 'Auto-refresh (5s)', // TODO: translate
|
||||
logs_wrap: 'Wrap lines', // TODO: translate
|
||||
logs_copy_all: 'Copy all', // TODO: translate
|
||||
logs_empty: 'No log lines yet.', // TODO: translate
|
||||
logs_loading: 'Loading logs…', // TODO: translate
|
||||
logs_load_failed: 'Logs failed to load', // TODO: translate
|
||||
logs_status_idle: 'Choose a log file to view recent lines.', // TODO: translate
|
||||
logs_no_mtime: 'not written yet', // TODO: translate
|
||||
logs_truncated_hint: 'Showing the tail of a large log file; older bytes were skipped to keep memory bounded.', // TODO: translate
|
||||
logs_copied: 'Logs copied', // TODO: translate
|
||||
logs_title: 'ログ',
|
||||
logs_file: 'ファイル',
|
||||
logs_tail: '末尾',
|
||||
logs_auto_refresh: '自動更新 (5秒)',
|
||||
logs_wrap: '行を折り返す',
|
||||
logs_copy_all: 'すべてコピー',
|
||||
logs_empty: 'ログはまだありません。',
|
||||
logs_loading: 'ログを読み込み中…',
|
||||
logs_load_failed: 'ログの読み込みに失敗しました',
|
||||
logs_status_idle: 'ログファイルを選択すると最近の行を表示します。',
|
||||
logs_no_mtime: '未書き込み',
|
||||
logs_truncated_hint: '大きなログファイルの末尾を表示しています。メモリ使用量を抑えるため、古いデータは省略されました。',
|
||||
logs_copied: 'ログをコピーしました',
|
||||
|
||||
// Insights
|
||||
insights_title: '使用状況分析',
|
||||
@@ -1760,9 +1760,9 @@ const LOCALES = {
|
||||
provider_category_specialized: '専門用途',
|
||||
onboarding_api_key_label: 'APIキー',
|
||||
onboarding_api_key_placeholder: '空欄で既存の保存済みキーを維持',
|
||||
onboarding_api_key_label_optional: 'API key (optional)', // TODO: translate
|
||||
onboarding_api_key_placeholder_optional: 'Leave blank for keyless servers', // TODO: translate
|
||||
onboarding_api_key_help_keyless: 'Most LM Studio / Ollama / vLLM installs run keyless — leave this blank if your server doesn\'t require authentication. Use the Test connection button to verify.', // TODO: translate
|
||||
onboarding_api_key_label_optional: 'APIキー (任意)',
|
||||
onboarding_api_key_placeholder_optional: 'キー不要のサーバーの場合は空欄にしてください',
|
||||
onboarding_api_key_help_keyless: 'LM Studio / Ollama / vLLM の多くはキーなしで動作します。認証が不要なサーバーの場合は空欄にしてください。『接続テスト』で確認できます。',
|
||||
onboarding_api_key_help_prefix: 'Hermes の .env ファイルにシークレットとして保存されます — 使用変数:',
|
||||
onboarding_base_url_label: 'ベース URL',
|
||||
onboarding_base_url_placeholder: 'https://your-endpoint.example/v1',
|
||||
@@ -1788,19 +1788,19 @@ const LOCALES = {
|
||||
onboarding_error_choose_model: '続行する前にモデルを選択してください。',
|
||||
onboarding_error_provider_required: '続行する前にセットアップモードを選択してください。',
|
||||
onboarding_error_base_url_required: 'カスタムエンドポイントにはベース URL が必要です。',
|
||||
onboarding_probe_test_button: 'Test connection', // TODO: translate
|
||||
onboarding_probe_probing: 'Testing connection…', // TODO: translate
|
||||
onboarding_probe_ok: 'Connected. {n} model(s) available.', // TODO: translate
|
||||
onboarding_probe_error_generic: 'Could not reach the configured base URL.', // TODO: translate
|
||||
onboarding_probe_error_invalid_url: 'Base URL must start with http:// or https://.', // TODO: translate
|
||||
onboarding_probe_error_dns: 'Could not resolve the host. Check the URL or use the host\'s IP address.', // TODO: translate
|
||||
onboarding_probe_error_connect_refused: 'Connection refused — the server may not be running on that address. From inside Docker, try the host IP instead of localhost.', // TODO: translate
|
||||
onboarding_probe_error_timeout: 'The endpoint did not respond in time. Check that the server is running and the URL is correct.', // TODO: translate
|
||||
onboarding_probe_error_http_4xx: 'The endpoint returned a client error. Check authentication and the URL path (typically ends in /v1).', // TODO: translate
|
||||
onboarding_probe_error_http_5xx: 'The endpoint returned a server error. Check the LM Studio / Ollama server logs.', // TODO: translate
|
||||
onboarding_probe_error_parse: 'The endpoint did not return a model list in the expected shape. Verify the URL points to the OpenAI-compatible API root.', // TODO: translate
|
||||
onboarding_probe_error_unreachable: 'Could not reach the configured base URL.', // TODO: translate
|
||||
onboarding_error_probe_failed: 'Could not validate the configured base URL.', // TODO: translate
|
||||
onboarding_probe_test_button: '接続テスト',
|
||||
onboarding_probe_probing: '接続をテスト中…',
|
||||
onboarding_probe_ok: '接続成功。{n} 個のモデルが利用可能です。',
|
||||
onboarding_probe_error_generic: '設定されたベース URL に到達できません。',
|
||||
onboarding_probe_error_invalid_url: 'ベース URL は http:// または https:// で始まる必要があります。',
|
||||
onboarding_probe_error_dns: 'ホストを名前解決できませんでした。URL を確認するか、ホストの IP アドレスを使用してください。',
|
||||
onboarding_probe_error_connect_refused: '接続が拒否されました。サーバーが起動していない可能性があります。Docker 内からは localhost ではなくホスト IP を試してください。',
|
||||
onboarding_probe_error_timeout: '時間内に応答がありません。サーバーが起動しているか、URL が正しいか確認してください。',
|
||||
onboarding_probe_error_http_4xx: 'クライアントエラーが返されました。認証設定と URL パス (通常は /v1) を確認してください。',
|
||||
onboarding_probe_error_http_5xx: 'サーバーエラーが返されました。LM Studio / Ollama のログを確認してください。',
|
||||
onboarding_probe_error_parse: 'モデル一覧が期待する形式で返されませんでした。URL が OpenAI 互換 API のルートを指しているか確認してください。',
|
||||
onboarding_probe_error_unreachable: '設定されたベース URL に到達できません。',
|
||||
onboarding_error_probe_failed: 'ベース URL を検証できませんでした。',
|
||||
onboarding_error_workspace_required: 'ワークスペースは必須です。',
|
||||
onboarding_error_model_required: 'モデルは必須です。',
|
||||
onboarding_complete: 'オンボーディング完了',
|
||||
|
||||
Reference in New Issue
Block a user