diff --git a/lingui.config.ts b/lingui.config.ts index 120b0be..022ead1 100644 --- a/lingui.config.ts +++ b/lingui.config.ts @@ -3,7 +3,7 @@ import { formatter } from "@lingui/format-json"; import type { SupportedLocale } from "./src/lib/i18n/schema"; const config = defineConfig({ - locales: ["ja", "en"] satisfies SupportedLocale[], + locales: ["ja", "en", "zh_CN"] satisfies SupportedLocale[], sourceLocale: "en", fallbackLocales: { default: "en", diff --git a/src/components/SettingsControls.tsx b/src/components/SettingsControls.tsx index 3c5e2a0..f43329a 100644 --- a/src/components/SettingsControls.tsx +++ b/src/components/SettingsControls.tsx @@ -254,6 +254,9 @@ export const SettingsControls: FC = ({ + + + {showDescriptions && ( diff --git a/src/lib/date/formatLocaleDate.ts b/src/lib/date/formatLocaleDate.ts index 76a3e80..24f8f6c 100644 --- a/src/lib/date/formatLocaleDate.ts +++ b/src/lib/date/formatLocaleDate.ts @@ -1,6 +1,7 @@ import { format } from "date-fns"; import { enUS } from "date-fns/locale/en-US"; import { ja } from "date-fns/locale/ja"; +import { zhCN } from "date-fns/locale/zh-CN"; import type { SupportedLocale } from "../i18n/schema"; export const convertDateFnsLocale = (locale: SupportedLocale) => { @@ -9,6 +10,8 @@ export const convertDateFnsLocale = (locale: SupportedLocale) => { return ja; case "en": return enUS; + case "zh_CN": + return zhCN; default: locale satisfies never; return enUS; @@ -49,6 +52,15 @@ export const formatLocaleDate = ( case "time": return "MM/dd/yyyy HH:mm"; } + } else if (locale === "zh_CN") { + switch (target) { + case "month": + return "yyyy年M月"; + case "day": + return "yyyy年M月d日"; + case "time": + return "yyyy年M月d日 HH:mm"; + } } // default switch (target) { diff --git a/src/lib/i18n/index.ts b/src/lib/i18n/index.ts index 615fc29..3e125db 100644 --- a/src/lib/i18n/index.ts +++ b/src/lib/i18n/index.ts @@ -1,7 +1,7 @@ import { i18n } from "@lingui/core"; import type { SupportedLocale } from "./schema"; -export const locales: SupportedLocale[] = ["ja", "en"]; +export const locales: SupportedLocale[] = ["ja", "en", "zh_CN"]; const importMessages = async (locale: SupportedLocale) => { switch (locale) { @@ -9,6 +9,8 @@ const importMessages = async (locale: SupportedLocale) => { return import("./locales/ja/messages"); case "en": return import("./locales/en/messages"); + case "zh_CN": + return import("./locales/zh_CN/messages"); default: locale satisfies never; throw new Error(`Unsupported locale: ${locale}`); diff --git a/src/lib/i18n/locales/en/messages.json b/src/lib/i18n/locales/en/messages.json index 54773e8..3ba2335 100644 --- a/src/lib/i18n/locales/en/messages.json +++ b/src/lib/i18n/locales/en/messages.json @@ -303,6 +303,12 @@ "origin": [["src/components/SettingsControls.tsx", 255]], "translation": "English" }, + "settings.locale.zh_CN": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 258]], + "translation": "Chinese (Simplified)" + }, "settings.locale.description": { "placeholders": {}, "comments": [], diff --git a/src/lib/i18n/locales/en/messages.ts b/src/lib/i18n/locales/en/messages.ts index 6a443fc..6cd411c 100644 --- a/src/lib/i18n/locales/en/messages.ts +++ b/src/lib/i18n/locales/en/messages.ts @@ -1 +1 @@ -/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"Available commands\":[\"Available commands\"],\"Available files and directories\":[\"Available files and directories\"],\"Close sidebar\":[\"Close Sidebar\"],\"Compare from\":[\"Compare from\"],\"Compare to\":[\"Compare to\"],\"Failed to commit\":[\"Failed to commit\"],\"Failed to commit and push\":[\"Failed to commit and push\"],\"Failed to push\":[\"Failed to push\"],\"Message input with completion support\":[\"Message input with completion support\"],\"Reload MCP servers\":[\"Reload MCP servers\"],\"Retry Push\":[\"Retry Push\"],\"Select enter key behavior\":[\"Select enter key behavior\"],\"Select language\":[\"Select language\"],\"Select permission mode\":[\"Select permission mode\"],\"Select theme\":[\"Select theme\"],\"Type your message here... (Start with / for commands, @ for files, Command+Enter to send)\":[\"Type your message here... (Start with / for commands, @ for files, Command+Enter to send)\"],\"Type your message here... (Start with / for commands, @ for files, Enter to send)\":[\"Type your message here... (Start with / for commands, @ for files, Enter to send)\"],\"Type your message here... (Start with / for commands, @ for files, Shift+Enter to send)\":[\"Type your message here... (Start with / for commands, @ for files, Shift+Enter to send)\"],\"Uncommitted changes\":[\"Uncommitted changes\"],\"assistant.thinking\":[\"Thinking\"],\"assistant.tool.input_parameters\":[\"Input Parameters\"],\"assistant.tool.message_count\":[[\"count\"],\" messages\"],\"assistant.tool.result\":[\"Tool Result\"],\"assistant.tool.task_id\":[\"Task ID\"],\"assistant.tool.tool_id\":[\"Tool ID\"],\"assistant.tool.view_task\":[\"View Task\"],\"assistant.tool.view_task_details\":[\"View Task Details\"],\"chat.attach_file\":[\"Attach\"],\"chat.autocomplete.active\":[\"Autocomplete Active\"],\"chat.button.start\":[\"Start Chat\"],\"chat.error.send_failed\":[\"Failed to send message. Please try again.\"],\"chat.modal.title\":[\"Start New Chat\"],\"chat.placeholder.continue.command_enter\":[\"Type your message... (Start with / for commands, @ for files, Command+Enter to send)\"],\"chat.placeholder.continue.enter\":[\"Type your message... (Start with / for commands, @ for files, Enter to send)\"],\"chat.placeholder.continue.shift_enter\":[\"Type your message... (Start with / for commands, @ for files, Shift+Enter to send)\"],\"chat.placeholder.resume.command_enter\":[\"Type your message... (Start with / for commands, @ for files, Command+Enter to send)\"],\"chat.placeholder.resume.enter\":[\"Type your message... (Start with / for commands, @ for files, Enter to send)\"],\"chat.placeholder.resume.shift_enter\":[\"Type your message... (Start with / for commands, @ for files, Shift+Enter to send)\"],\"chat.resume\":[\"Resume\"],\"chat.scheduled_send.failed\":[\"Failed to schedule message\"],\"chat.scheduled_send.success\":[\"Message scheduled successfully\"],\"chat.scheduled_send.success_description\":[\"You can view and manage it in the Scheduler tab\"],\"chat.send\":[\"Send\"],\"chat.send_mode.immediate\":[\"Send Now\"],\"chat.send_mode.label\":[\"Send Mode\"],\"chat.send_mode.scheduled\":[\"Schedule Send\"],\"chat.send_mode.scheduled_time\":[\"Scheduled Send Time\"],\"chat.status.processing\":[\"Processing...\"],\"common.action.cancel\":[\"Cancel\"],\"common.cancel\":[\"Cancel\"],\"common.create\":[\"Create\"],\"common.delete\":[\"Delete\"],\"common.deleting\":[\"Deleting...\"],\"common.error\":[\"Error\"],\"common.loading\":[\"Loading...\"],\"common.reload\":[\"Reload\"],\"common.saving\":[\"Saving...\"],\"common.update\":[\"Update\"],\"control.branch\":[\"Branch\"],\"control.git\":[\"Git\"],\"control.metadata\":[\"Metadata\"],\"control.new\":[\"New\"],\"control.new_chat\":[\"New Chat\"],\"control.open_git_dialog\":[\"Open Git Dialog\"],\"control.project_path\":[\"Project Path\"],\"control.scroll_to_bottom\":[\"Scroll to Bottom\"],\"control.scroll_to_top\":[\"Scroll to Top\"],\"control.session_id\":[\"Session ID\"],\"conversation.error.raw_content\":[\"Raw Data: \"],\"conversation.error.report_issue\":[\"Report This Issue\"],\"conversation.error.schema\":[\"Schema Error\"],\"conversation.error.schema_validation\":[\"Schema Validation Error\"],\"conversation.error.schema_validation.description\":[\"Failed to parse this conversation entry. This may be due to format changes or parsing issues.\"],\"cron_builder.cron_expression\":[\"Cron Expression\"],\"cron_builder.custom\":[\"Custom\"],\"cron_builder.daily\":[\"Daily\"],\"cron_builder.day_of_week\":[\"Day of Week\"],\"cron_builder.expression\":[\"Cron Expression\"],\"cron_builder.friday\":[\"Friday\"],\"cron_builder.hour\":[\"Hour (0-23)\"],\"cron_builder.hourly\":[\"Hourly\"],\"cron_builder.minute\":[\"Minute (0-59)\"],\"cron_builder.monday\":[\"Monday\"],\"cron_builder.preview\":[\"Preview\"],\"cron_builder.saturday\":[\"Saturday\"],\"cron_builder.schedule_type\":[\"Schedule Type\"],\"cron_builder.sunday\":[\"Sunday\"],\"cron_builder.thursday\":[\"Thursday\"],\"cron_builder.tuesday\":[\"Tuesday\"],\"cron_builder.wednesday\":[\"Wednesday\"],\"cron_builder.weekly\":[\"Weekly\"],\"diff.commit\":[\"Commit\"],\"diff.commit.changes\":[\"Commit Changes\"],\"diff.commit.message\":[\"Commit Message\"],\"diff.commit.push\":[\"Commit & Push\"],\"diff.committing\":[\"Committing...\"],\"diff.committing.pushing\":[\"Committing & Pushing...\"],\"diff.deselect.all\":[\"Deselect All\"],\"diff.enter.message\":[\"Please enter a commit message\"],\"diff.files\":[\"Files\"],\"diff.files.changed\":[\"files changed\"],\"diff.loading\":[\"Loading diff...\"],\"diff.push\":[\"Push\"],\"diff.pushing\":[\"Pushing...\"],\"diff.select.all\":[\"Select All\"],\"diff.select.file\":[\"Please select at least one file\"],\"directory_picker.current\":[\"Current: \"],\"directory_picker.loading\":[\"Loading...\"],\"directory_picker.no_directories\":[\"No Directories Found\"],\"directory_picker.show_hidden\":[\"Show Hidden Files\"],\"mcp.error.load_failed\":[\"Failed to load MCP servers: \",[\"error\"]],\"mcp.no.servers\":[\"No MCP Servers Found\"],\"mcp.title\":[\"MCP Servers\"],\"notfound.button.go_home\":[\"Go Home\"],\"notfound.default.description\":[\"The page you are looking for does not exist or has been moved.\"],\"notfound.default.title\":[\"Page Not Found\"],\"notfound.project.description\":[\"The project you are looking for does not exist.\"],\"notfound.project.title\":[\"No Projects Found\"],\"notfound.session.description\":[\"The session you are looking for does not exist.\"],\"notfound.session.title\":[\"Session Not Found\"],\"notification.beep\":[\"Beep\"],\"notification.chime\":[\"Chime\"],\"notification.description\":[\"Select sound to play when Claude Code task completes\"],\"notification.none\":[\"None\"],\"notification.ping\":[\"Ping\"],\"notification.pop\":[\"Pop\"],\"notification.test\":[\"Test\"],\"project.new\":[\"New Project\"],\"project.setup.action.setting_up\":[\"Setting up...\"],\"project.setup.action.setup\":[\"Set Up Project\"],\"project.setup.description\":[\"Navigate to the directory to set up as a Claude Code project. If CLAUDE.md exists, it describes the project; otherwise initialize with <0>/init.\"],\"project.setup.title\":[\"Set Up New Project\"],\"project_list.last_modified\":[\"Last Modified: \"],\"project_list.messages\":[\"Messages: \"],\"project_list.no_projects.description\":[\"No Claude Code projects found in your ~/.claude/projects directory. Start a conversation with Claude Code to set up your first project.\"],\"project_list.no_projects.title\":[\"No Projects Found\"],\"project_list.view_conversations\":[\"View Conversations\"],\"projects.page.description\":[\"View Claude Code conversation history and project operations\"],\"projects.page.loading\":[\"Loading projects...\"],\"projects.page.title\":[\"Projects\"],\"scheduler.create_job\":[\"Create Job\"],\"scheduler.delete_dialog.description\":[\"Are you sure you want to delete this scheduler job? This action cannot be undone.\"],\"scheduler.delete_dialog.title\":[\"Delete Scheduler Job\"],\"scheduler.dialog.description\":[\"Configure a scheduled job to send messages to Claude Code\"],\"scheduler.dialog.title.create\":[\"Create Scheduled Job\"],\"scheduler.dialog.title.edit\":[\"Edit Scheduled Job\"],\"scheduler.error.load_failed\":[\"Failed to load scheduler jobs: \",[\"error\"]],\"scheduler.form.concurrency_policy\":[\"Concurrency Policy\"],\"scheduler.form.concurrency_policy.run\":[\"Run even if already running\"],\"scheduler.form.concurrency_policy.skip\":[\"Skip if already running\"],\"scheduler.form.enabled\":[\"Enable\"],\"scheduler.form.enabled.description\":[\"Enable or disable this scheduled job\"],\"scheduler.form.message\":[\"Message Content\"],\"scheduler.form.message.aria_label\":[\"Message input with completion support (/ for commands, @ for files)\"],\"scheduler.form.message.hint\":[\"/ for command completion, @ for file completion\"],\"scheduler.form.message.placeholder\":[\"Type message to send to Claude Code... (/ for commands, @ for files)\"],\"scheduler.form.name\":[\"Job Name\"],\"scheduler.form.reserved_time\":[\"Scheduled Execution Time\"],\"scheduler.form.reserved_time.hint\":[\"Will be executed once at the specified date and time, then automatically deleted\"],\"scheduler.form.schedule_type\":[\"Schedule Type\"],\"scheduler.form.schedule_type.cron\":[\"Recurring (Cron)\"],\"scheduler.form.schedule_type.reserved\":[\"One-time Execution\"],\"scheduler.job.create_failed\":[\"Failed to create job\"],\"scheduler.job.created\":[\"Job created successfully\"],\"scheduler.job.delete_failed\":[\"Failed to delete job\"],\"scheduler.job.deleted\":[\"Job deleted successfully\"],\"scheduler.job.update_failed\":[\"Failed to update job\"],\"scheduler.job.updated\":[\"Job updated successfully\"],\"scheduler.last_run\":[\"Last Run\"],\"scheduler.no_jobs\":[\"No scheduler jobs\"],\"scheduler.status.disabled\":[\"Disabled\"],\"scheduler.status.enabled\":[\"Enabled\"],\"scheduler.title\":[\"Scheduler\"],\"session.conversation.abort\":[\"Abort\"],\"session.conversation.paused\":[\"Paused\"],\"session.conversation.running\":[\"Running\"],\"session.processing\":[\"Claude Code is processing...\"],\"session.status.paused\":[\"Paused\"],\"session.status.running\":[\"Running\"],\"sessions.load.more\":[\"Load More\"],\"sessions.new\":[\"New\"],\"sessions.title\":[\"Sessions\"],\"sessions.total\":[\"Total\"],\"settings.description\":[\"Display and behavior settings\"],\"settings.input.enter_key_behavior\":[\"Enter Key Behavior\"],\"settings.input.enter_key_behavior.command_enter\":[\"Send with Command+Enter\"],\"settings.input.enter_key_behavior.description\":[\"Select Enter key behavior for message input\"],\"settings.input.enter_key_behavior.enter\":[\"Send with Enter\"],\"settings.input.enter_key_behavior.shift_enter\":[\"Send with Shift+Enter (Default)\"],\"settings.loading\":[\"Loading settings...\"],\"settings.locale\":[\"Language\"],\"settings.locale.description\":[\"Select your preferred language\"],\"settings.locale.en\":[\"English\"],\"settings.locale.ja\":[\"Japanese\"],\"settings.notifications\":[\"Notifications\"],\"settings.permission.mode\":[\"Permission Mode\"],\"settings.permission.mode.accept_edits\":[\"Accept Edits (Auto-approve file edits)\"],\"settings.permission.mode.bypass_permissions\":[\"Bypass Permissions (No prompts)\"],\"settings.permission.mode.default\":[\"Default (Confirm Permissions)\"],\"settings.permission.mode.description\":[\"Control how file operation permission requests are handled\"],\"settings.permission.mode.plan\":[\"Plan Mode (Planning only)\"],\"settings.permission.mode.unavailable\":[\"This feature is not available in your Claude Code version. All tools are automatically approved.\"],\"settings.section.notifications\":[\"Notifications\"],\"settings.section.session_display\":[\"Session Display\"],\"settings.section.system_info\":[\"System Information\"],\"settings.session.display\":[\"Session Display\"],\"settings.session.hide_no_user_message\":[\"Hide Sessions Without User Messages\"],\"settings.session.hide_no_user_message.description\":[\"Show only sessions that contain user commands or messages\"],\"settings.session.unify_same_title\":[\"Unify Sessions with Same Title\"],\"settings.session.unify_same_title.description\":[\"When multiple sessions have the same title, show only the latest session\"],\"settings.tab.title\":[\"Display and Notification Settings\"],\"settings.theme\":[\"Theme\"],\"settings.theme.dark\":[\"Dark\"],\"settings.theme.description\":[\"Select your preferred color theme\"],\"settings.theme.light\":[\"Light\"],\"settings.theme.system\":[\"System\"],\"settings.title\":[\"Settings\"],\"sidebar.back.to.projects\":[\"Back to Projects\"],\"sidebar.show.mcp.settings\":[\"Show MCP Server Settings\"],\"sidebar.show.scheduler.jobs\":[\"Show Scheduler Jobs\"],\"sidebar.show.session.list\":[\"Show Session List\"],\"system.info.tab.title\":[\"Show System Information\"],\"system_info.available_features\":[\"Available Features\"],\"system_info.claude_code\":[\"Claude Code\"],\"system_info.description\":[\"Version and feature information\"],\"system_info.executable_path\":[\"Executable Path\"],\"system_info.feature.agent_sdk.description\":[\"Uses @anthropic-ai/claude-agent-sdk instead of @anthropic-ai/claude-code\"],\"system_info.feature.agent_sdk.title\":[\"Extended Agent Mode\"],\"system_info.feature.tool_approval.description\":[\"Approve or reject tool executions before Claude runs them, giving you full control over actions\"],\"system_info.feature.tool_approval.title\":[\"Tool Approval\"],\"system_info.feature.unknown.description\":[\"Feature information unavailable\"],\"system_info.title\":[\"System Information\"],\"system_info.unknown\":[\"Unknown\"],\"system_info.version_label\":[\"Version\"],\"system_info.viewer_version\":[\"Claude Code Viewer\"],\"user.content.document.pdf\":[\"PDF Document\"],\"user.content.document.text\":[\"Text Document\"],\"user.content.image\":[\"Attached Image\"],\"user.content.unsupported_document\":[\"Unsupported Document\"],\"user.content.unsupported_document.description\":[\"Document type not supported for display\"],\"user.content.unsupported_media\":[\"Unsupported Media\"],\"user.content.unsupported_media.description\":[\"Media format not supported for display\"]}")as Messages; \ No newline at end of file +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"Available commands\":[\"Available commands\"],\"Available files and directories\":[\"Available files and directories\"],\"Close sidebar\":[\"Close Sidebar\"],\"Compare from\":[\"Compare from\"],\"Compare to\":[\"Compare to\"],\"Failed to commit\":[\"Failed to commit\"],\"Failed to commit and push\":[\"Failed to commit and push\"],\"Failed to push\":[\"Failed to push\"],\"Message input with completion support\":[\"Message input with completion support\"],\"Reload MCP servers\":[\"Reload MCP servers\"],\"Retry Push\":[\"Retry Push\"],\"Select enter key behavior\":[\"Select enter key behavior\"],\"Select language\":[\"Select language\"],\"Select permission mode\":[\"Select permission mode\"],\"Select theme\":[\"Select theme\"],\"Type your message here... (Start with / for commands, @ for files, Command+Enter to send)\":[\"Type your message here... (Start with / for commands, @ for files, Command+Enter to send)\"],\"Type your message here... (Start with / for commands, @ for files, Enter to send)\":[\"Type your message here... (Start with / for commands, @ for files, Enter to send)\"],\"Type your message here... (Start with / for commands, @ for files, Shift+Enter to send)\":[\"Type your message here... (Start with / for commands, @ for files, Shift+Enter to send)\"],\"Uncommitted changes\":[\"Uncommitted changes\"],\"assistant.thinking\":[\"Thinking\"],\"assistant.tool.input_parameters\":[\"Input Parameters\"],\"assistant.tool.message_count\":[[\"count\"],\" messages\"],\"assistant.tool.result\":[\"Tool Result\"],\"assistant.tool.task_id\":[\"Task ID\"],\"assistant.tool.tool_id\":[\"Tool ID\"],\"assistant.tool.view_task\":[\"View Task\"],\"assistant.tool.view_task_details\":[\"View Task Details\"],\"chat.attach_file\":[\"Attach\"],\"chat.autocomplete.active\":[\"Autocomplete Active\"],\"chat.button.start\":[\"Start Chat\"],\"chat.error.send_failed\":[\"Failed to send message. Please try again.\"],\"chat.modal.title\":[\"Start New Chat\"],\"chat.placeholder.continue.command_enter\":[\"Type your message... (Start with / for commands, @ for files, Command+Enter to send)\"],\"chat.placeholder.continue.enter\":[\"Type your message... (Start with / for commands, @ for files, Enter to send)\"],\"chat.placeholder.continue.shift_enter\":[\"Type your message... (Start with / for commands, @ for files, Shift+Enter to send)\"],\"chat.placeholder.resume.command_enter\":[\"Type your message... (Start with / for commands, @ for files, Command+Enter to send)\"],\"chat.placeholder.resume.enter\":[\"Type your message... (Start with / for commands, @ for files, Enter to send)\"],\"chat.placeholder.resume.shift_enter\":[\"Type your message... (Start with / for commands, @ for files, Shift+Enter to send)\"],\"chat.resume\":[\"Resume\"],\"chat.scheduled_send.failed\":[\"Failed to schedule message\"],\"chat.scheduled_send.success\":[\"Message scheduled successfully\"],\"chat.scheduled_send.success_description\":[\"You can view and manage it in the Scheduler tab\"],\"chat.send\":[\"Send\"],\"chat.send_mode.immediate\":[\"Send Now\"],\"chat.send_mode.label\":[\"Send Mode\"],\"chat.send_mode.scheduled\":[\"Schedule Send\"],\"chat.send_mode.scheduled_time\":[\"Scheduled Send Time\"],\"chat.status.processing\":[\"Processing...\"],\"common.action.cancel\":[\"Cancel\"],\"common.cancel\":[\"Cancel\"],\"common.create\":[\"Create\"],\"common.delete\":[\"Delete\"],\"common.deleting\":[\"Deleting...\"],\"common.error\":[\"Error\"],\"common.loading\":[\"Loading...\"],\"common.reload\":[\"Reload\"],\"common.saving\":[\"Saving...\"],\"common.update\":[\"Update\"],\"control.branch\":[\"Branch\"],\"control.git\":[\"Git\"],\"control.metadata\":[\"Metadata\"],\"control.new\":[\"New\"],\"control.new_chat\":[\"New Chat\"],\"control.open_git_dialog\":[\"Open Git Dialog\"],\"control.project_path\":[\"Project Path\"],\"control.scroll_to_bottom\":[\"Scroll to Bottom\"],\"control.scroll_to_top\":[\"Scroll to Top\"],\"control.session_id\":[\"Session ID\"],\"conversation.error.raw_content\":[\"Raw Data: \"],\"conversation.error.report_issue\":[\"Report This Issue\"],\"conversation.error.schema\":[\"Schema Error\"],\"conversation.error.schema_validation\":[\"Schema Validation Error\"],\"conversation.error.schema_validation.description\":[\"Failed to parse this conversation entry. This may be due to format changes or parsing issues.\"],\"cron_builder.cron_expression\":[\"Cron Expression\"],\"cron_builder.custom\":[\"Custom\"],\"cron_builder.daily\":[\"Daily\"],\"cron_builder.day_of_week\":[\"Day of Week\"],\"cron_builder.expression\":[\"Cron Expression\"],\"cron_builder.friday\":[\"Friday\"],\"cron_builder.hour\":[\"Hour (0-23)\"],\"cron_builder.hourly\":[\"Hourly\"],\"cron_builder.minute\":[\"Minute (0-59)\"],\"cron_builder.monday\":[\"Monday\"],\"cron_builder.preview\":[\"Preview\"],\"cron_builder.saturday\":[\"Saturday\"],\"cron_builder.schedule_type\":[\"Schedule Type\"],\"cron_builder.sunday\":[\"Sunday\"],\"cron_builder.thursday\":[\"Thursday\"],\"cron_builder.tuesday\":[\"Tuesday\"],\"cron_builder.wednesday\":[\"Wednesday\"],\"cron_builder.weekly\":[\"Weekly\"],\"diff.commit\":[\"Commit\"],\"diff.commit.changes\":[\"Commit Changes\"],\"diff.commit.message\":[\"Commit Message\"],\"diff.commit.push\":[\"Commit & Push\"],\"diff.committing\":[\"Committing...\"],\"diff.committing.pushing\":[\"Committing & Pushing...\"],\"diff.deselect.all\":[\"Deselect All\"],\"diff.enter.message\":[\"Please enter a commit message\"],\"diff.files\":[\"Files\"],\"diff.files.changed\":[\"files changed\"],\"diff.loading\":[\"Loading diff...\"],\"diff.push\":[\"Push\"],\"diff.pushing\":[\"Pushing...\"],\"diff.select.all\":[\"Select All\"],\"diff.select.file\":[\"Please select at least one file\"],\"directory_picker.current\":[\"Current: \"],\"directory_picker.loading\":[\"Loading...\"],\"directory_picker.no_directories\":[\"No Directories Found\"],\"directory_picker.show_hidden\":[\"Show Hidden Files\"],\"mcp.error.load_failed\":[\"Failed to load MCP servers: \",[\"error\"]],\"mcp.no.servers\":[\"No MCP Servers Found\"],\"mcp.title\":[\"MCP Servers\"],\"notfound.button.go_home\":[\"Go Home\"],\"notfound.default.description\":[\"The page you are looking for does not exist or has been moved.\"],\"notfound.default.title\":[\"Page Not Found\"],\"notfound.project.description\":[\"The project you are looking for does not exist.\"],\"notfound.project.title\":[\"No Projects Found\"],\"notfound.session.description\":[\"The session you are looking for does not exist.\"],\"notfound.session.title\":[\"Session Not Found\"],\"notification.beep\":[\"Beep\"],\"notification.chime\":[\"Chime\"],\"notification.description\":[\"Select sound to play when Claude Code task completes\"],\"notification.none\":[\"None\"],\"notification.ping\":[\"Ping\"],\"notification.pop\":[\"Pop\"],\"notification.test\":[\"Test\"],\"project.new\":[\"New Project\"],\"project.setup.action.setting_up\":[\"Setting up...\"],\"project.setup.action.setup\":[\"Set Up Project\"],\"project.setup.description\":[\"Navigate to the directory to set up as a Claude Code project. If CLAUDE.md exists, it describes the project; otherwise initialize with <0>/init.\"],\"project.setup.title\":[\"Set Up New Project\"],\"project_list.last_modified\":[\"Last Modified: \"],\"project_list.messages\":[\"Messages: \"],\"project_list.no_projects.description\":[\"No Claude Code projects found in your ~/.claude/projects directory. Start a conversation with Claude Code to set up your first project.\"],\"project_list.no_projects.title\":[\"No Projects Found\"],\"project_list.view_conversations\":[\"View Conversations\"],\"projects.page.description\":[\"View Claude Code conversation history and project operations\"],\"projects.page.loading\":[\"Loading projects...\"],\"projects.page.title\":[\"Projects\"],\"scheduler.create_job\":[\"Create Job\"],\"scheduler.delete_dialog.description\":[\"Are you sure you want to delete this scheduler job? This action cannot be undone.\"],\"scheduler.delete_dialog.title\":[\"Delete Scheduler Job\"],\"scheduler.dialog.description\":[\"Configure a scheduled job to send messages to Claude Code\"],\"scheduler.dialog.title.create\":[\"Create Scheduled Job\"],\"scheduler.dialog.title.edit\":[\"Edit Scheduled Job\"],\"scheduler.error.load_failed\":[\"Failed to load scheduler jobs: \",[\"error\"]],\"scheduler.form.concurrency_policy\":[\"Concurrency Policy\"],\"scheduler.form.concurrency_policy.run\":[\"Run even if already running\"],\"scheduler.form.concurrency_policy.skip\":[\"Skip if already running\"],\"scheduler.form.enabled\":[\"Enable\"],\"scheduler.form.enabled.description\":[\"Enable or disable this scheduled job\"],\"scheduler.form.message\":[\"Message Content\"],\"scheduler.form.message.aria_label\":[\"Message input with completion support (/ for commands, @ for files)\"],\"scheduler.form.message.hint\":[\"/ for command completion, @ for file completion\"],\"scheduler.form.message.placeholder\":[\"Type message to send to Claude Code... (/ for commands, @ for files)\"],\"scheduler.form.name\":[\"Job Name\"],\"scheduler.form.reserved_time\":[\"Scheduled Execution Time\"],\"scheduler.form.reserved_time.hint\":[\"Will be executed once at the specified date and time, then automatically deleted\"],\"scheduler.form.schedule_type\":[\"Schedule Type\"],\"scheduler.form.schedule_type.cron\":[\"Recurring (Cron)\"],\"scheduler.form.schedule_type.reserved\":[\"One-time Execution\"],\"scheduler.job.create_failed\":[\"Failed to create job\"],\"scheduler.job.created\":[\"Job created successfully\"],\"scheduler.job.delete_failed\":[\"Failed to delete job\"],\"scheduler.job.deleted\":[\"Job deleted successfully\"],\"scheduler.job.update_failed\":[\"Failed to update job\"],\"scheduler.job.updated\":[\"Job updated successfully\"],\"scheduler.last_run\":[\"Last Run\"],\"scheduler.no_jobs\":[\"No scheduler jobs\"],\"scheduler.status.disabled\":[\"Disabled\"],\"scheduler.status.enabled\":[\"Enabled\"],\"scheduler.title\":[\"Scheduler\"],\"session.conversation.abort\":[\"Abort\"],\"session.conversation.paused\":[\"Paused\"],\"session.conversation.running\":[\"Running\"],\"session.processing\":[\"Claude Code is processing...\"],\"session.status.paused\":[\"Paused\"],\"session.status.running\":[\"Running\"],\"sessions.load.more\":[\"Load More\"],\"sessions.new\":[\"New\"],\"sessions.title\":[\"Sessions\"],\"sessions.total\":[\"Total\"],\"settings.description\":[\"Display and behavior settings\"],\"settings.input.enter_key_behavior\":[\"Enter Key Behavior\"],\"settings.input.enter_key_behavior.command_enter\":[\"Send with Command+Enter\"],\"settings.input.enter_key_behavior.description\":[\"Select Enter key behavior for message input\"],\"settings.input.enter_key_behavior.enter\":[\"Send with Enter\"],\"settings.input.enter_key_behavior.shift_enter\":[\"Send with Shift+Enter (Default)\"],\"settings.loading\":[\"Loading settings...\"],\"settings.locale\":[\"Language\"],\"settings.locale.description\":[\"Select your preferred language\"],\"settings.locale.en\":[\"English\"],\"settings.locale.ja\":[\"Japanese\"],\"settings.locale.zh_CN\":[\"Chinese (Simplified)\"],\"settings.notifications\":[\"Notifications\"],\"settings.permission.mode\":[\"Permission Mode\"],\"settings.permission.mode.accept_edits\":[\"Accept Edits (Auto-approve file edits)\"],\"settings.permission.mode.bypass_permissions\":[\"Bypass Permissions (No prompts)\"],\"settings.permission.mode.default\":[\"Default (Confirm Permissions)\"],\"settings.permission.mode.description\":[\"Control how file operation permission requests are handled\"],\"settings.permission.mode.plan\":[\"Plan Mode (Planning only)\"],\"settings.permission.mode.unavailable\":[\"This feature is not available in your Claude Code version. All tools are automatically approved.\"],\"settings.section.notifications\":[\"Notifications\"],\"settings.section.session_display\":[\"Session Display\"],\"settings.section.system_info\":[\"System Information\"],\"settings.session.display\":[\"Session Display\"],\"settings.session.hide_no_user_message\":[\"Hide Sessions Without User Messages\"],\"settings.session.hide_no_user_message.description\":[\"Show only sessions that contain user commands or messages\"],\"settings.session.unify_same_title\":[\"Unify Sessions with Same Title\"],\"settings.session.unify_same_title.description\":[\"When multiple sessions have the same title, show only the latest session\"],\"settings.tab.title\":[\"Display and Notification Settings\"],\"settings.theme\":[\"Theme\"],\"settings.theme.dark\":[\"Dark\"],\"settings.theme.description\":[\"Select your preferred color theme\"],\"settings.theme.light\":[\"Light\"],\"settings.theme.system\":[\"System\"],\"settings.title\":[\"Settings\"],\"sidebar.back.to.projects\":[\"Back to Projects\"],\"sidebar.show.mcp.settings\":[\"Show MCP Server Settings\"],\"sidebar.show.scheduler.jobs\":[\"Show Scheduler Jobs\"],\"sidebar.show.session.list\":[\"Show Session List\"],\"system.info.tab.title\":[\"Show System Information\"],\"system_info.available_features\":[\"Available Features\"],\"system_info.claude_code\":[\"Claude Code\"],\"system_info.description\":[\"Version and feature information\"],\"system_info.executable_path\":[\"Executable Path\"],\"system_info.feature.agent_sdk.description\":[\"Uses @anthropic-ai/claude-agent-sdk instead of @anthropic-ai/claude-code\"],\"system_info.feature.agent_sdk.title\":[\"Extended Agent Mode\"],\"system_info.feature.tool_approval.description\":[\"Approve or reject tool executions before Claude runs them, giving you full control over actions\"],\"system_info.feature.tool_approval.title\":[\"Tool Approval\"],\"system_info.feature.unknown.description\":[\"Feature information unavailable\"],\"system_info.title\":[\"System Information\"],\"system_info.unknown\":[\"Unknown\"],\"system_info.version_label\":[\"Version\"],\"system_info.viewer_version\":[\"Claude Code Viewer\"],\"user.content.document.pdf\":[\"PDF Document\"],\"user.content.document.text\":[\"Text Document\"],\"user.content.image\":[\"Attached Image\"],\"user.content.unsupported_document\":[\"Unsupported Document\"],\"user.content.unsupported_document.description\":[\"Document type not supported for display\"],\"user.content.unsupported_media\":[\"Unsupported Media\"],\"user.content.unsupported_media.description\":[\"Media format not supported for display\"]}")as Messages; \ No newline at end of file diff --git a/src/lib/i18n/locales/ja/messages.json b/src/lib/i18n/locales/ja/messages.json index 46c9514..346bc90 100644 --- a/src/lib/i18n/locales/ja/messages.json +++ b/src/lib/i18n/locales/ja/messages.json @@ -303,6 +303,12 @@ "origin": [["src/components/SettingsControls.tsx", 255]], "translation": "English" }, + "settings.locale.zh_CN": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 258]], + "translation": "中国語(簡体字)" + }, "settings.locale.description": { "placeholders": {}, "comments": [], diff --git a/src/lib/i18n/locales/ja/messages.ts b/src/lib/i18n/locales/ja/messages.ts index 4c2e031..9b4cb4b 100644 --- a/src/lib/i18n/locales/ja/messages.ts +++ b/src/lib/i18n/locales/ja/messages.ts @@ -1 +1 @@ -/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"Available commands\":[\"利用可能なコマンド\"],\"Available files and directories\":[\"利用可能なファイルとディレクトリ\"],\"Close sidebar\":[\"サイドバーを閉じる\"],\"Compare from\":[\"比較元\"],\"Compare to\":[\"比較先\"],\"Failed to commit\":[\"コミットに失敗しました\"],\"Failed to commit and push\":[\"コミットとプッシュに失敗しました\"],\"Failed to push\":[\"プッシュに失敗しました\"],\"Message input with completion support\":[\"補完機能付きメッセージ入力\"],\"Reload MCP servers\":[\"MCPサーバーを再読み込み\"],\"Retry Push\":[\"プッシュを再試行\"],\"Select enter key behavior\":[\"Enterキーの動作を選択\"],\"Select language\":[\"言語を選択\"],\"Select permission mode\":[\"権限モードを選択\"],\"Select theme\":[\"テーマを選択\"],\"Type your message here... (Start with / for commands, @ for files, Command+Enter to send)\":[\"ここにメッセージを入力... (/でコマンド、@でファイル、Command+Enterで送信)\"],\"Type your message here... (Start with / for commands, @ for files, Enter to send)\":[\"ここにメッセージを入力... (/でコマンド、@でファイル、Enterで送信)\"],\"Type your message here... (Start with / for commands, @ for files, Shift+Enter to send)\":[\"ここにメッセージを入力... (/でコマンド、@でファイル、Shift+Enterで送信)\"],\"Uncommitted changes\":[\"未コミットの変更\"],\"assistant.thinking\":[\"思考中\"],\"assistant.tool.input_parameters\":[\"入力パラメータ\"],\"assistant.tool.message_count\":[[\"count\"],\"件のメッセージ\"],\"assistant.tool.result\":[\"ツール実行結果\"],\"assistant.tool.task_id\":[\"タスクID\"],\"assistant.tool.tool_id\":[\"ツールID\"],\"assistant.tool.view_task\":[\"タスクを表示\"],\"assistant.tool.view_task_details\":[\"タスクを確認\"],\"chat.attach_file\":[\"添付\"],\"chat.autocomplete.active\":[\"オートコンプリート有効\"],\"chat.button.start\":[\"チャット開始\"],\"chat.error.send_failed\":[\"メッセージの送信に失敗しました。もう一度お試しください。\"],\"chat.modal.title\":[\"新しいチャットを開始\"],\"chat.placeholder.continue.command_enter\":[\"メッセージを入力... (/でコマンド、@でファイル、Command+Enterで送信)\"],\"chat.placeholder.continue.enter\":[\"メッセージを入力... (/でコマンド、@でファイル、Enterで送信)\"],\"chat.placeholder.continue.shift_enter\":[\"メッセージを入力... (/でコマンド、@でファイル、Shift+Enterで送信)\"],\"chat.placeholder.resume.command_enter\":[\"メッセージを入力... (/でコマンド、@でファイル、Command+Enterで送信)\"],\"chat.placeholder.resume.enter\":[\"メッセージを入力... (/でコマンド、@でファイル、Enterで送信)\"],\"chat.placeholder.resume.shift_enter\":[\"メッセージを入力... (/でコマンド、@でファイル、Shift+Enterで送信)\"],\"chat.resume\":[\"再開\"],\"chat.scheduled_send.failed\":[\"メッセージの予約に失敗しました\"],\"chat.scheduled_send.success\":[\"メッセージを予約しました\"],\"chat.scheduled_send.success_description\":[\"スケジューラタブで確認・管理できます\"],\"chat.send\":[\"送信\"],\"chat.send_mode.immediate\":[\"今すぐ送信\"],\"chat.send_mode.label\":[\"送信モード\"],\"chat.send_mode.scheduled\":[\"予約送信\"],\"chat.send_mode.scheduled_time\":[\"送信予定時刻\"],\"chat.status.processing\":[\"処理中...\"],\"common.action.cancel\":[\"キャンセル\"],\"common.cancel\":[\"キャンセル\"],\"common.create\":[\"作成\"],\"common.delete\":[\"削除\"],\"common.deleting\":[\"削除中...\"],\"common.error\":[\"エラー\"],\"common.loading\":[\"読み込み中...\"],\"common.reload\":[\"再読み込み\"],\"common.saving\":[\"保存中...\"],\"common.update\":[\"更新\"],\"control.branch\":[\"ブランチ\"],\"control.git\":[\"Git\"],\"control.metadata\":[\"メタデータ\"],\"control.new\":[\"新規\"],\"control.new_chat\":[\"新しいチャット\"],\"control.open_git_dialog\":[\"Gitダイアログを開く\"],\"control.project_path\":[\"プロジェクトパス\"],\"control.scroll_to_bottom\":[\"ボトムにスクロール\"],\"control.scroll_to_top\":[\"トップにスクロール\"],\"control.session_id\":[\"セッションID\"],\"conversation.error.raw_content\":[\"生データ:\"],\"conversation.error.report_issue\":[\"この問題を報告\"],\"conversation.error.schema\":[\"スキーマエラー\"],\"conversation.error.schema_validation\":[\"スキーマ検証エラー\"],\"conversation.error.schema_validation.description\":[\"この会話エントリの解析に失敗しました。フォーマットの変更または解析の問題が考えられます。\"],\"cron_builder.cron_expression\":[\"Cron式\"],\"cron_builder.custom\":[\"カスタム\"],\"cron_builder.daily\":[\"毎日\"],\"cron_builder.day_of_week\":[\"曜日\"],\"cron_builder.expression\":[\"Cron式\"],\"cron_builder.friday\":[\"金曜日\"],\"cron_builder.hour\":[\"時 (0-23)\"],\"cron_builder.hourly\":[\"毎時\"],\"cron_builder.minute\":[\"分 (0-59)\"],\"cron_builder.monday\":[\"月曜日\"],\"cron_builder.preview\":[\"プレビュー\"],\"cron_builder.saturday\":[\"土曜日\"],\"cron_builder.schedule_type\":[\"スケジュールタイプ\"],\"cron_builder.sunday\":[\"日曜日\"],\"cron_builder.thursday\":[\"木曜日\"],\"cron_builder.tuesday\":[\"火曜日\"],\"cron_builder.wednesday\":[\"水曜日\"],\"cron_builder.weekly\":[\"毎週\"],\"diff.commit\":[\"コミット\"],\"diff.commit.changes\":[\"変更をコミット\"],\"diff.commit.message\":[\"コミットメッセージ\"],\"diff.commit.push\":[\"コミット&プッシュ\"],\"diff.committing\":[\"コミット中...\"],\"diff.committing.pushing\":[\"コミット&プッシュ中...\"],\"diff.deselect.all\":[\"すべて選択解除\"],\"diff.enter.message\":[\"コミットメッセージを入力\"],\"diff.files\":[\"ファイル\"],\"diff.files.changed\":[\"ファイルが変更されました\"],\"diff.loading\":[\"差分を読み込み中...\"],\"diff.push\":[\"プッシュ\"],\"diff.pushing\":[\"プッシュ中...\"],\"diff.select.all\":[\"すべて選択\"],\"diff.select.file\":[\"少なくとも1つのファイルを選択してください\"],\"directory_picker.current\":[\"現在:\"],\"directory_picker.loading\":[\"読み込み中...\"],\"directory_picker.no_directories\":[\"ディレクトリが見つかりません\"],\"directory_picker.show_hidden\":[\"隠しファイルを表示\"],\"mcp.error.load_failed\":[\"MCPサーバーの読み込みに失敗しました: \",[\"error\"]],\"mcp.no.servers\":[\"MCPサーバーが見つかりません\"],\"mcp.title\":[\"MCPサーバー\"],\"notfound.button.go_home\":[\"ホームに戻る\"],\"notfound.default.description\":[\"お探しのページは存在しないか、移動されました。\"],\"notfound.default.title\":[\"ページが見つかりません\"],\"notfound.project.description\":[\"お探しのプロジェクトは存在しません。\"],\"notfound.project.title\":[\"プロジェクトが見つかりません\"],\"notfound.session.description\":[\"お探しのセッションは存在しません。\"],\"notfound.session.title\":[\"セッションが見つかりません\"],\"notification.beep\":[\"ビープ音\"],\"notification.chime\":[\"チャイム\"],\"notification.description\":[\"Claude Code のタスクが完了した時に再生する音を選択してください\"],\"notification.none\":[\"なし\"],\"notification.ping\":[\"ピン\"],\"notification.pop\":[\"ポップ\"],\"notification.test\":[\"テスト\"],\"project.new\":[\"新規プロジェクト\"],\"project.setup.action.setting_up\":[\"セットアップ中...\"],\"project.setup.action.setup\":[\"プロジェクトをセットアップ\"],\"project.setup.description\":[\"Claude Codeプロジェクトとしてセットアップするディレクトリまで移動してください。CLAUDE.mdが存在する場合はプロジェクトを説明し、存在しない場合は<0>/initで初期化します。\"],\"project.setup.title\":[\"新規プロジェクトをセットアップ\"],\"project_list.last_modified\":[\"最終更新:\"],\"project_list.messages\":[\"メッセージ:\"],\"project_list.no_projects.description\":[\"~/.claude/projectsディレクトリにClaude Codeプロジェクトが見つかりません。Claude Codeとの会話を開始して、最初のプロジェクトをセットアップしてください。\"],\"project_list.no_projects.title\":[\"プロジェクトが見つかりません\"],\"project_list.view_conversations\":[\"会話を表示\"],\"projects.page.description\":[\"Claude Codeの会話履歴とプロジェクトの操作を閲覧\"],\"projects.page.loading\":[\"プロジェクトを読み込み中...\"],\"projects.page.title\":[\"プロジェクト\"],\"scheduler.create_job\":[\"ジョブを作成\"],\"scheduler.delete_dialog.description\":[\"このスケジューラジョブを削除してもよろしいですか?この操作は取り消せません。\"],\"scheduler.delete_dialog.title\":[\"スケジューラジョブを削除\"],\"scheduler.dialog.description\":[\"Claude Codeにメッセージを送信するスケジュールジョブを設定します\"],\"scheduler.dialog.title.create\":[\"スケジュールジョブを作成\"],\"scheduler.dialog.title.edit\":[\"スケジュールジョブを編集\"],\"scheduler.error.load_failed\":[\"スケジューラジョブの読み込みに失敗しました: \",[\"error\"]],\"scheduler.form.concurrency_policy\":[\"同時実行ポリシー\"],\"scheduler.form.concurrency_policy.run\":[\"実行中でも実行する\"],\"scheduler.form.concurrency_policy.skip\":[\"実行中の場合はスキップ\"],\"scheduler.form.enabled\":[\"有効化\"],\"scheduler.form.enabled.description\":[\"このスケジュールジョブを有効または無効にします\"],\"scheduler.form.message\":[\"メッセージ内容\"],\"scheduler.form.message.aria_label\":[\"補完機能付きメッセージ入力 (/でコマンド、@でファイル)\"],\"scheduler.form.message.hint\":[\"/でコマンド補完、@でファイル補完\"],\"scheduler.form.message.placeholder\":[\"Claude Codeに送信するメッセージを入力... (/でコマンド補完、@でファイル補完)\"],\"scheduler.form.name\":[\"ジョブ名\"],\"scheduler.form.reserved_time\":[\"実行予定日時\"],\"scheduler.form.reserved_time.hint\":[\"指定した日時に一度だけ実行されます。実行後は自動的に削除されます\"],\"scheduler.form.schedule_type\":[\"スケジュールタイプ\"],\"scheduler.form.schedule_type.cron\":[\"定期実行 (Cron)\"],\"scheduler.form.schedule_type.reserved\":[\"予約実行\"],\"scheduler.job.create_failed\":[\"ジョブの作成に失敗しました\"],\"scheduler.job.created\":[\"ジョブを作成しました\"],\"scheduler.job.delete_failed\":[\"ジョブの削除に失敗しました\"],\"scheduler.job.deleted\":[\"ジョブを削除しました\"],\"scheduler.job.update_failed\":[\"ジョブの更新に失敗しました\"],\"scheduler.job.updated\":[\"ジョブを更新しました\"],\"scheduler.last_run\":[\"最終実行\"],\"scheduler.no_jobs\":[\"スケジューラジョブがありません\"],\"scheduler.status.disabled\":[\"無効\"],\"scheduler.status.enabled\":[\"有効\"],\"scheduler.title\":[\"スケジューラ\"],\"session.conversation.abort\":[\"中止\"],\"session.conversation.paused\":[\"一時停止\"],\"session.conversation.running\":[\"実行中\"],\"session.processing\":[\"Claude Codeが処理中...\"],\"session.status.paused\":[\"一時停止\"],\"session.status.running\":[\"実行中\"],\"sessions.load.more\":[\"さらに読み込む\"],\"sessions.new\":[\"新規\"],\"sessions.title\":[\"セッション\"],\"sessions.total\":[\"合計\"],\"settings.description\":[\"表示と動作の設定\"],\"settings.input.enter_key_behavior\":[\"Enterキーの動作\"],\"settings.input.enter_key_behavior.command_enter\":[\"Command+Enterで送信\"],\"settings.input.enter_key_behavior.description\":[\"メッセージ入力でのEnterキーの動作を選択\"],\"settings.input.enter_key_behavior.enter\":[\"Enterで送信\"],\"settings.input.enter_key_behavior.shift_enter\":[\"Shift+Enterで送信(デフォルト)\"],\"settings.loading\":[\"設定を読み込み中...\"],\"settings.locale\":[\"言語\"],\"settings.locale.description\":[\"お好みの言語を選択\"],\"settings.locale.en\":[\"English\"],\"settings.locale.ja\":[\"日本語\"],\"settings.notifications\":[\"通知\"],\"settings.permission.mode\":[\"権限モード\"],\"settings.permission.mode.accept_edits\":[\"編集を承認(ファイル編集を自動承認)\"],\"settings.permission.mode.bypass_permissions\":[\"権限をバイパス(プロンプトなし)\"],\"settings.permission.mode.default\":[\"デフォルト(権限を確認)\"],\"settings.permission.mode.description\":[\"ファイル操作の権限リクエストの処理方法を制御\"],\"settings.permission.mode.plan\":[\"プランモード(計画のみ)\"],\"settings.permission.mode.unavailable\":[\"お使いのClaude Codeバージョンではこの機能は利用できません。すべてのツールは自動で承認されます。\"],\"settings.section.notifications\":[\"通知\"],\"settings.section.session_display\":[\"セッション表示\"],\"settings.section.system_info\":[\"システム情報\"],\"settings.session.display\":[\"セッション表示\"],\"settings.session.hide_no_user_message\":[\"ユーザーメッセージのないセッションを非表示\"],\"settings.session.hide_no_user_message.description\":[\"ユーザーコマンドまたはメッセージを含むセッションのみを表示\"],\"settings.session.unify_same_title\":[\"同じタイトルのセッションを統合\"],\"settings.session.unify_same_title.description\":[\"同じタイトルの複数のセッションがある場合、最新のセッションのみを表示\"],\"settings.tab.title\":[\"表示と通知の設定\"],\"settings.theme\":[\"テーマ\"],\"settings.theme.dark\":[\"ダーク\"],\"settings.theme.description\":[\"お好みのカラーテーマを選択\"],\"settings.theme.light\":[\"ライト\"],\"settings.theme.system\":[\"システム\"],\"settings.title\":[\"設定\"],\"sidebar.back.to.projects\":[\"プロジェクト一覧に戻る\"],\"sidebar.show.mcp.settings\":[\"MCPサーバー設定を表示\"],\"sidebar.show.scheduler.jobs\":[\"スケジューラジョブを表示\"],\"sidebar.show.session.list\":[\"セッション一覧を表示\"],\"system.info.tab.title\":[\"システム情報を表示\"],\"system_info.available_features\":[\"利用可能機能\"],\"system_info.claude_code\":[\"Claude Code\"],\"system_info.description\":[\"バージョンと機能情報\"],\"system_info.executable_path\":[\"実行ファイル\"],\"system_info.feature.agent_sdk.description\":[\"@anthropic-ai/claude-code ではなく @anthropic-ai/claude-agent-sdk を利用します\"],\"system_info.feature.agent_sdk.title\":[\"拡張エージェントモード\"],\"system_info.feature.tool_approval.description\":[\"Claude がツールを実行する前に承認または拒否でき、アクションを完全にコントロールできます\"],\"system_info.feature.tool_approval.title\":[\"ツール実行承認\"],\"system_info.feature.unknown.description\":[\"機能情報は利用できません\"],\"system_info.title\":[\"システム情報\"],\"system_info.unknown\":[\"不明\"],\"system_info.version_label\":[\"バージョン\"],\"system_info.viewer_version\":[\"Claude Code Viewer\"],\"user.content.document.pdf\":[\"PDF文書\"],\"user.content.document.text\":[\"テキスト文書\"],\"user.content.image\":[\"添付画像\"],\"user.content.unsupported_document\":[\"サポートされていない文書\"],\"user.content.unsupported_document.description\":[\"文書タイプは表示がサポートされていません\"],\"user.content.unsupported_media\":[\"サポートされていないメディア\"],\"user.content.unsupported_media.description\":[\"表示がサポートされていないメディア形式です\"]}")as Messages; \ No newline at end of file +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"Available commands\":[\"利用可能なコマンド\"],\"Available files and directories\":[\"利用可能なファイルとディレクトリ\"],\"Close sidebar\":[\"サイドバーを閉じる\"],\"Compare from\":[\"比較元\"],\"Compare to\":[\"比較先\"],\"Failed to commit\":[\"コミットに失敗しました\"],\"Failed to commit and push\":[\"コミットとプッシュに失敗しました\"],\"Failed to push\":[\"プッシュに失敗しました\"],\"Message input with completion support\":[\"補完機能付きメッセージ入力\"],\"Reload MCP servers\":[\"MCPサーバーを再読み込み\"],\"Retry Push\":[\"プッシュを再試行\"],\"Select enter key behavior\":[\"Enterキーの動作を選択\"],\"Select language\":[\"言語を選択\"],\"Select permission mode\":[\"権限モードを選択\"],\"Select theme\":[\"テーマを選択\"],\"Type your message here... (Start with / for commands, @ for files, Command+Enter to send)\":[\"ここにメッセージを入力... (/でコマンド、@でファイル、Command+Enterで送信)\"],\"Type your message here... (Start with / for commands, @ for files, Enter to send)\":[\"ここにメッセージを入力... (/でコマンド、@でファイル、Enterで送信)\"],\"Type your message here... (Start with / for commands, @ for files, Shift+Enter to send)\":[\"ここにメッセージを入力... (/でコマンド、@でファイル、Shift+Enterで送信)\"],\"Uncommitted changes\":[\"未コミットの変更\"],\"assistant.thinking\":[\"思考中\"],\"assistant.tool.input_parameters\":[\"入力パラメータ\"],\"assistant.tool.message_count\":[[\"count\"],\"件のメッセージ\"],\"assistant.tool.result\":[\"ツール実行結果\"],\"assistant.tool.task_id\":[\"タスクID\"],\"assistant.tool.tool_id\":[\"ツールID\"],\"assistant.tool.view_task\":[\"タスクを表示\"],\"assistant.tool.view_task_details\":[\"タスクを確認\"],\"chat.attach_file\":[\"添付\"],\"chat.autocomplete.active\":[\"オートコンプリート有効\"],\"chat.button.start\":[\"チャット開始\"],\"chat.error.send_failed\":[\"メッセージの送信に失敗しました。もう一度お試しください。\"],\"chat.modal.title\":[\"新しいチャットを開始\"],\"chat.placeholder.continue.command_enter\":[\"メッセージを入力... (/でコマンド、@でファイル、Command+Enterで送信)\"],\"chat.placeholder.continue.enter\":[\"メッセージを入力... (/でコマンド、@でファイル、Enterで送信)\"],\"chat.placeholder.continue.shift_enter\":[\"メッセージを入力... (/でコマンド、@でファイル、Shift+Enterで送信)\"],\"chat.placeholder.resume.command_enter\":[\"メッセージを入力... (/でコマンド、@でファイル、Command+Enterで送信)\"],\"chat.placeholder.resume.enter\":[\"メッセージを入力... (/でコマンド、@でファイル、Enterで送信)\"],\"chat.placeholder.resume.shift_enter\":[\"メッセージを入力... (/でコマンド、@でファイル、Shift+Enterで送信)\"],\"chat.resume\":[\"再開\"],\"chat.scheduled_send.failed\":[\"メッセージの予約に失敗しました\"],\"chat.scheduled_send.success\":[\"メッセージを予約しました\"],\"chat.scheduled_send.success_description\":[\"スケジューラタブで確認・管理できます\"],\"chat.send\":[\"送信\"],\"chat.send_mode.immediate\":[\"今すぐ送信\"],\"chat.send_mode.label\":[\"送信モード\"],\"chat.send_mode.scheduled\":[\"予約送信\"],\"chat.send_mode.scheduled_time\":[\"送信予定時刻\"],\"chat.status.processing\":[\"処理中...\"],\"common.action.cancel\":[\"キャンセル\"],\"common.cancel\":[\"キャンセル\"],\"common.create\":[\"作成\"],\"common.delete\":[\"削除\"],\"common.deleting\":[\"削除中...\"],\"common.error\":[\"エラー\"],\"common.loading\":[\"読み込み中...\"],\"common.reload\":[\"再読み込み\"],\"common.saving\":[\"保存中...\"],\"common.update\":[\"更新\"],\"control.branch\":[\"ブランチ\"],\"control.git\":[\"Git\"],\"control.metadata\":[\"メタデータ\"],\"control.new\":[\"新規\"],\"control.new_chat\":[\"新しいチャット\"],\"control.open_git_dialog\":[\"Gitダイアログを開く\"],\"control.project_path\":[\"プロジェクトパス\"],\"control.scroll_to_bottom\":[\"ボトムにスクロール\"],\"control.scroll_to_top\":[\"トップにスクロール\"],\"control.session_id\":[\"セッションID\"],\"conversation.error.raw_content\":[\"生データ:\"],\"conversation.error.report_issue\":[\"この問題を報告\"],\"conversation.error.schema\":[\"スキーマエラー\"],\"conversation.error.schema_validation\":[\"スキーマ検証エラー\"],\"conversation.error.schema_validation.description\":[\"この会話エントリの解析に失敗しました。フォーマットの変更または解析の問題が考えられます。\"],\"cron_builder.cron_expression\":[\"Cron式\"],\"cron_builder.custom\":[\"カスタム\"],\"cron_builder.daily\":[\"毎日\"],\"cron_builder.day_of_week\":[\"曜日\"],\"cron_builder.expression\":[\"Cron式\"],\"cron_builder.friday\":[\"金曜日\"],\"cron_builder.hour\":[\"時 (0-23)\"],\"cron_builder.hourly\":[\"毎時\"],\"cron_builder.minute\":[\"分 (0-59)\"],\"cron_builder.monday\":[\"月曜日\"],\"cron_builder.preview\":[\"プレビュー\"],\"cron_builder.saturday\":[\"土曜日\"],\"cron_builder.schedule_type\":[\"スケジュールタイプ\"],\"cron_builder.sunday\":[\"日曜日\"],\"cron_builder.thursday\":[\"木曜日\"],\"cron_builder.tuesday\":[\"火曜日\"],\"cron_builder.wednesday\":[\"水曜日\"],\"cron_builder.weekly\":[\"毎週\"],\"diff.commit\":[\"コミット\"],\"diff.commit.changes\":[\"変更をコミット\"],\"diff.commit.message\":[\"コミットメッセージ\"],\"diff.commit.push\":[\"コミット&プッシュ\"],\"diff.committing\":[\"コミット中...\"],\"diff.committing.pushing\":[\"コミット&プッシュ中...\"],\"diff.deselect.all\":[\"すべて選択解除\"],\"diff.enter.message\":[\"コミットメッセージを入力\"],\"diff.files\":[\"ファイル\"],\"diff.files.changed\":[\"ファイルが変更されました\"],\"diff.loading\":[\"差分を読み込み中...\"],\"diff.push\":[\"プッシュ\"],\"diff.pushing\":[\"プッシュ中...\"],\"diff.select.all\":[\"すべて選択\"],\"diff.select.file\":[\"少なくとも1つのファイルを選択してください\"],\"directory_picker.current\":[\"現在:\"],\"directory_picker.loading\":[\"読み込み中...\"],\"directory_picker.no_directories\":[\"ディレクトリが見つかりません\"],\"directory_picker.show_hidden\":[\"隠しファイルを表示\"],\"mcp.error.load_failed\":[\"MCPサーバーの読み込みに失敗しました: \",[\"error\"]],\"mcp.no.servers\":[\"MCPサーバーが見つかりません\"],\"mcp.title\":[\"MCPサーバー\"],\"notfound.button.go_home\":[\"ホームに戻る\"],\"notfound.default.description\":[\"お探しのページは存在しないか、移動されました。\"],\"notfound.default.title\":[\"ページが見つかりません\"],\"notfound.project.description\":[\"お探しのプロジェクトは存在しません。\"],\"notfound.project.title\":[\"プロジェクトが見つかりません\"],\"notfound.session.description\":[\"お探しのセッションは存在しません。\"],\"notfound.session.title\":[\"セッションが見つかりません\"],\"notification.beep\":[\"ビープ音\"],\"notification.chime\":[\"チャイム\"],\"notification.description\":[\"Claude Code のタスクが完了した時に再生する音を選択してください\"],\"notification.none\":[\"なし\"],\"notification.ping\":[\"ピン\"],\"notification.pop\":[\"ポップ\"],\"notification.test\":[\"テスト\"],\"project.new\":[\"新規プロジェクト\"],\"project.setup.action.setting_up\":[\"セットアップ中...\"],\"project.setup.action.setup\":[\"プロジェクトをセットアップ\"],\"project.setup.description\":[\"Claude Codeプロジェクトとしてセットアップするディレクトリまで移動してください。CLAUDE.mdが存在する場合はプロジェクトを説明し、存在しない場合は<0>/initで初期化します。\"],\"project.setup.title\":[\"新規プロジェクトをセットアップ\"],\"project_list.last_modified\":[\"最終更新:\"],\"project_list.messages\":[\"メッセージ:\"],\"project_list.no_projects.description\":[\"~/.claude/projectsディレクトリにClaude Codeプロジェクトが見つかりません。Claude Codeとの会話を開始して、最初のプロジェクトをセットアップしてください。\"],\"project_list.no_projects.title\":[\"プロジェクトが見つかりません\"],\"project_list.view_conversations\":[\"会話を表示\"],\"projects.page.description\":[\"Claude Codeの会話履歴とプロジェクトの操作を閲覧\"],\"projects.page.loading\":[\"プロジェクトを読み込み中...\"],\"projects.page.title\":[\"プロジェクト\"],\"scheduler.create_job\":[\"ジョブを作成\"],\"scheduler.delete_dialog.description\":[\"このスケジューラジョブを削除してもよろしいですか?この操作は取り消せません。\"],\"scheduler.delete_dialog.title\":[\"スケジューラジョブを削除\"],\"scheduler.dialog.description\":[\"Claude Codeにメッセージを送信するスケジュールジョブを設定します\"],\"scheduler.dialog.title.create\":[\"スケジュールジョブを作成\"],\"scheduler.dialog.title.edit\":[\"スケジュールジョブを編集\"],\"scheduler.error.load_failed\":[\"スケジューラジョブの読み込みに失敗しました: \",[\"error\"]],\"scheduler.form.concurrency_policy\":[\"同時実行ポリシー\"],\"scheduler.form.concurrency_policy.run\":[\"実行中でも実行する\"],\"scheduler.form.concurrency_policy.skip\":[\"実行中の場合はスキップ\"],\"scheduler.form.enabled\":[\"有効化\"],\"scheduler.form.enabled.description\":[\"このスケジュールジョブを有効または無効にします\"],\"scheduler.form.message\":[\"メッセージ内容\"],\"scheduler.form.message.aria_label\":[\"補完機能付きメッセージ入力 (/でコマンド、@でファイル)\"],\"scheduler.form.message.hint\":[\"/でコマンド補完、@でファイル補完\"],\"scheduler.form.message.placeholder\":[\"Claude Codeに送信するメッセージを入力... (/でコマンド補完、@でファイル補完)\"],\"scheduler.form.name\":[\"ジョブ名\"],\"scheduler.form.reserved_time\":[\"実行予定日時\"],\"scheduler.form.reserved_time.hint\":[\"指定した日時に一度だけ実行されます。実行後は自動的に削除されます\"],\"scheduler.form.schedule_type\":[\"スケジュールタイプ\"],\"scheduler.form.schedule_type.cron\":[\"定期実行 (Cron)\"],\"scheduler.form.schedule_type.reserved\":[\"予約実行\"],\"scheduler.job.create_failed\":[\"ジョブの作成に失敗しました\"],\"scheduler.job.created\":[\"ジョブを作成しました\"],\"scheduler.job.delete_failed\":[\"ジョブの削除に失敗しました\"],\"scheduler.job.deleted\":[\"ジョブを削除しました\"],\"scheduler.job.update_failed\":[\"ジョブの更新に失敗しました\"],\"scheduler.job.updated\":[\"ジョブを更新しました\"],\"scheduler.last_run\":[\"最終実行\"],\"scheduler.no_jobs\":[\"スケジューラジョブがありません\"],\"scheduler.status.disabled\":[\"無効\"],\"scheduler.status.enabled\":[\"有効\"],\"scheduler.title\":[\"スケジューラ\"],\"session.conversation.abort\":[\"中止\"],\"session.conversation.paused\":[\"一時停止\"],\"session.conversation.running\":[\"実行中\"],\"session.processing\":[\"Claude Codeが処理中...\"],\"session.status.paused\":[\"一時停止\"],\"session.status.running\":[\"実行中\"],\"sessions.load.more\":[\"さらに読み込む\"],\"sessions.new\":[\"新規\"],\"sessions.title\":[\"セッション\"],\"sessions.total\":[\"合計\"],\"settings.description\":[\"表示と動作の設定\"],\"settings.input.enter_key_behavior\":[\"Enterキーの動作\"],\"settings.input.enter_key_behavior.command_enter\":[\"Command+Enterで送信\"],\"settings.input.enter_key_behavior.description\":[\"メッセージ入力でのEnterキーの動作を選択\"],\"settings.input.enter_key_behavior.enter\":[\"Enterで送信\"],\"settings.input.enter_key_behavior.shift_enter\":[\"Shift+Enterで送信(デフォルト)\"],\"settings.loading\":[\"設定を読み込み中...\"],\"settings.locale\":[\"言語\"],\"settings.locale.description\":[\"お好みの言語を選択\"],\"settings.locale.en\":[\"English\"],\"settings.locale.ja\":[\"日本語\"],\"settings.locale.zh_CN\":[\"中国語(簡体字)\"],\"settings.notifications\":[\"通知\"],\"settings.permission.mode\":[\"権限モード\"],\"settings.permission.mode.accept_edits\":[\"編集を承認(ファイル編集を自動承認)\"],\"settings.permission.mode.bypass_permissions\":[\"権限をバイパス(プロンプトなし)\"],\"settings.permission.mode.default\":[\"デフォルト(権限を確認)\"],\"settings.permission.mode.description\":[\"ファイル操作の権限リクエストの処理方法を制御\"],\"settings.permission.mode.plan\":[\"プランモード(計画のみ)\"],\"settings.permission.mode.unavailable\":[\"お使いのClaude Codeバージョンではこの機能は利用できません。すべてのツールは自動で承認されます。\"],\"settings.section.notifications\":[\"通知\"],\"settings.section.session_display\":[\"セッション表示\"],\"settings.section.system_info\":[\"システム情報\"],\"settings.session.display\":[\"セッション表示\"],\"settings.session.hide_no_user_message\":[\"ユーザーメッセージのないセッションを非表示\"],\"settings.session.hide_no_user_message.description\":[\"ユーザーコマンドまたはメッセージを含むセッションのみを表示\"],\"settings.session.unify_same_title\":[\"同じタイトルのセッションを統合\"],\"settings.session.unify_same_title.description\":[\"同じタイトルの複数のセッションがある場合、最新のセッションのみを表示\"],\"settings.tab.title\":[\"表示と通知の設定\"],\"settings.theme\":[\"テーマ\"],\"settings.theme.dark\":[\"ダーク\"],\"settings.theme.description\":[\"お好みのカラーテーマを選択\"],\"settings.theme.light\":[\"ライト\"],\"settings.theme.system\":[\"システム\"],\"settings.title\":[\"設定\"],\"sidebar.back.to.projects\":[\"プロジェクト一覧に戻る\"],\"sidebar.show.mcp.settings\":[\"MCPサーバー設定を表示\"],\"sidebar.show.scheduler.jobs\":[\"スケジューラジョブを表示\"],\"sidebar.show.session.list\":[\"セッション一覧を表示\"],\"system.info.tab.title\":[\"システム情報を表示\"],\"system_info.available_features\":[\"利用可能機能\"],\"system_info.claude_code\":[\"Claude Code\"],\"system_info.description\":[\"バージョンと機能情報\"],\"system_info.executable_path\":[\"実行ファイル\"],\"system_info.feature.agent_sdk.description\":[\"@anthropic-ai/claude-code ではなく @anthropic-ai/claude-agent-sdk を利用します\"],\"system_info.feature.agent_sdk.title\":[\"拡張エージェントモード\"],\"system_info.feature.tool_approval.description\":[\"Claude がツールを実行する前に承認または拒否でき、アクションを完全にコントロールできます\"],\"system_info.feature.tool_approval.title\":[\"ツール実行承認\"],\"system_info.feature.unknown.description\":[\"機能情報は利用できません\"],\"system_info.title\":[\"システム情報\"],\"system_info.unknown\":[\"不明\"],\"system_info.version_label\":[\"バージョン\"],\"system_info.viewer_version\":[\"Claude Code Viewer\"],\"user.content.document.pdf\":[\"PDF文書\"],\"user.content.document.text\":[\"テキスト文書\"],\"user.content.image\":[\"添付画像\"],\"user.content.unsupported_document\":[\"サポートされていない文書\"],\"user.content.unsupported_document.description\":[\"文書タイプは表示がサポートされていません\"],\"user.content.unsupported_media\":[\"サポートされていないメディア\"],\"user.content.unsupported_media.description\":[\"表示がサポートされていないメディア形式です\"]}")as Messages; \ No newline at end of file diff --git a/src/lib/i18n/locales/zh_CN/messages.json b/src/lib/i18n/locales/zh_CN/messages.json new file mode 100644 index 0000000..cfa19f1 --- /dev/null +++ b/src/lib/i18n/locales/zh_CN/messages.json @@ -0,0 +1,2305 @@ +{ + "notfound.session.title": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/routes/projects/$projectId/sessions/$sessionId/index.tsx", 21] + ], + "translation": "会话未找到" + }, + "notfound.session.description": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/routes/projects/$projectId/sessions/$sessionId/index.tsx", 22] + ], + "translation": "您查找的会话不存在。" + }, + "notfound.project.title": { + "placeholders": {}, + "comments": [], + "origin": [["src/routes/projects/$projectId/latest/index.tsx", 14]], + "translation": "未找到项目" + }, + "notfound.project.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/routes/projects/$projectId/latest/index.tsx", 15]], + "translation": "您查找的项目不存在。" + }, + "notification.none": { + "placeholders": {}, + "comments": [], + "origin": [["src/lib/notifications.tsx", 103]], + "translation": "无" + }, + "notification.beep": { + "placeholders": {}, + "comments": [], + "origin": [["src/lib/notifications.tsx", 104]], + "translation": "哔哔声" + }, + "notification.chime": { + "placeholders": {}, + "comments": [], + "origin": [["src/lib/notifications.tsx", 105]], + "translation": "铃声" + }, + "notification.ping": { + "placeholders": {}, + "comments": [], + "origin": [["src/lib/notifications.tsx", 106]], + "translation": "Ping 音" + }, + "notification.pop": { + "placeholders": {}, + "comments": [], + "origin": [["src/lib/notifications.tsx", 107]], + "translation": "Pop 音" + }, + "notfound.default.title": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/NotFound.tsx", 19]], + "translation": "页面未找到" + }, + "notfound.default.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/NotFound.tsx", 20]], + "translation": "您查找的页面不存在或已被移动。" + }, + "notfound.button.go_home": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/NotFound.tsx", 43]], + "translation": "返回首页" + }, + "notification.test": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/NotificationSettings.tsx", 90]], + "translation": "测试" + }, + "notification.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/NotificationSettings.tsx", 97]], + "translation": "选择 Claude Code 任务完成时播放的提示音" + }, + "system_info.feature.tool_approval.title": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SystemInfoCard.tsx", 29]], + "translation": "工具审批" + }, + "system_info.feature.tool_approval.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SystemInfoCard.tsx", 31]], + "translation": "在 Claude 执行工具前批准或拒绝,让您完全掌控操作" + }, + "system_info.feature.agent_sdk.title": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SystemInfoCard.tsx", 36]], + "translation": "扩展 Agent 模式" + }, + "system_info.feature.agent_sdk.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SystemInfoCard.tsx", 37]], + "translation": "使用 @anthropic-ai/claude-agent-sdk 而非 @anthropic-ai/claude-code" + }, + "system_info.feature.unknown.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SystemInfoCard.tsx", 42]], + "translation": "功能信息不可用" + }, + "system_info.title": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SystemInfoCard.tsx", 64]], + "translation": "系统信息" + }, + "system_info.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SystemInfoCard.tsx", 67]], + "translation": "版本和功能信息" + }, + "system_info.viewer_version": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SystemInfoCard.tsx", 75]], + "translation": "Claude Code Viewer" + }, + "system_info.version_label": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/components/SystemInfoCard.tsx", 79], + ["src/components/SystemInfoCard.tsx", 108] + ], + "translation": "版本" + }, + "system_info.claude_code": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SystemInfoCard.tsx", 90]], + "translation": "Claude Code" + }, + "system_info.executable_path": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SystemInfoCard.tsx", 95]], + "translation": "可执行文件路径" + }, + "system_info.unknown": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/components/SystemInfoCard.tsx", 100], + ["src/components/SystemInfoCard.tsx", 112] + ], + "translation": "未知" + }, + "system_info.available_features": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SystemInfoCard.tsx", 124]], + "translation": "可用功能" + }, + "settings.session.hide_no_user_message": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 124]], + "translation": "隐藏无用户消息的会话" + }, + "settings.session.hide_no_user_message.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 130]], + "translation": "仅显示包含用户命令或消息的会话" + }, + "settings.session.unify_same_title": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 145]], + "translation": "合并同名会话" + }, + "settings.session.unify_same_title.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 151]], + "translation": "当多个会话标题相同时,仅显示最新的会话" + }, + "settings.input.enter_key_behavior": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 161]], + "translation": "回车键行为" + }, + "Select enter key behavior": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 169]], + "translation": "选择回车键行为" + }, + "settings.input.enter_key_behavior.shift_enter": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 173]], + "translation": "使用 Shift+Enter 发送(默认)" + }, + "settings.input.enter_key_behavior.enter": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 176]], + "translation": "使用 Enter 发送" + }, + "settings.input.enter_key_behavior.command_enter": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 179]], + "translation": "使用 Command+Enter 发送" + }, + "settings.input.enter_key_behavior.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 185]], + "translation": "选择消息输入的回车键行为" + }, + "settings.permission.mode": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 196]], + "translation": "权限模式" + }, + "Select permission mode": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 205]], + "translation": "选择权限模式" + }, + "settings.permission.mode.default": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 209]], + "translation": "默认(确认权限)" + }, + "settings.permission.mode.accept_edits": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 212]], + "translation": "接受编辑(自动批准文件编辑)" + }, + "settings.permission.mode.bypass_permissions": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 215]], + "translation": "跳过权限(无提示)" + }, + "settings.permission.mode.plan": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 218]], + "translation": "计划模式(仅规划)" + }, + "settings.permission.mode.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 224]], + "translation": "控制如何处理文件操作权限请求" + }, + "settings.permission.mode.unavailable": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 229]], + "translation": "此功能在您的 Claude Code 版本中不可用。所有工具都会自动批准。" + }, + "settings.locale": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 240]], + "translation": "语言" + }, + "Select language": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 248]], + "translation": "选择语言" + }, + "settings.locale.ja": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 252]], + "translation": "日语" + }, + "settings.locale.en": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 255]], + "translation": "英语" + }, + "settings.locale.zh_CN": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 258]], + "translation": "简体中文" + }, + "settings.locale.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 261]], + "translation": "选择您偏好的语言" + }, + "settings.theme": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 269]], + "translation": "主题" + }, + "Select theme": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 274]], + "translation": "选择主题" + }, + "settings.theme.light": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 278]], + "translation": "浅色" + }, + "settings.theme.dark": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 281]], + "translation": "深色" + }, + "settings.theme.system": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 284]], + "translation": "跟随系统" + }, + "settings.theme.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/SettingsControls.tsx", 290]], + "translation": "选择您偏好的颜色主题" + }, + "settings.tab.title": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/MobileSidebar.tsx", + 249 + ], + ["src/components/GlobalSidebar.tsx", 42] + ], + "translation": "显示和通知设置" + }, + "settings.title": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/GlobalSidebar.tsx", 47]], + "translation": "设置" + }, + "settings.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/GlobalSidebar.tsx", 50]], + "translation": "显示和行为设置" + }, + "settings.loading": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/MobileSidebar.tsx", + 102 + ], + ["src/components/GlobalSidebar.tsx", 58] + ], + "translation": "正在加载设置..." + }, + "settings.section.session_display": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/GlobalSidebar.tsx", 66]], + "translation": "会话显示" + }, + "settings.section.notifications": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/GlobalSidebar.tsx", 73]], + "translation": "通知" + }, + "settings.section.system_info": { + "placeholders": {}, + "comments": [], + "origin": [["src/components/GlobalSidebar.tsx", 86]], + "translation": "系统信息" + }, + "projects.page.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/page.tsx", 20]], + "translation": "查看 Claude Code 对话历史和项目操作" + }, + "projects.page.title": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/page.tsx", 28]], + "translation": "项目" + }, + "projects.page.loading": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/page.tsx", 36]], + "translation": "正在加载项目..." + }, + "project_list.no_projects.title": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/components/ProjectList.tsx", 28]], + "translation": "未找到项目" + }, + "project_list.no_projects.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/components/ProjectList.tsx", 31]], + "translation": "在您的 ~/.claude/projects 目录中未找到 Claude Code 项目。与 Claude Code 开始对话以创建您的第一个项目。" + }, + "project_list.last_modified": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/components/ProjectList.tsx", 54]], + "translation": "最后修改时间:" + }, + "project_list.messages": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/components/ProjectList.tsx", 63]], + "translation": "消息数:" + }, + "project_list.view_conversations": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/components/ProjectList.tsx", 72]], + "translation": "查看对话" + }, + "project.new": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/components/SetupProjectDialog.tsx", 62]], + "translation": "新建项目" + }, + "project.setup.title": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/components/SetupProjectDialog.tsx", 68]], + "translation": "设置新项目" + }, + "project.setup.description": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/components/SetupProjectDialog.tsx", 71]], + "translation": "导航到要设置为 Claude Code 项目的目录。如果存在 CLAUDE.md,它将描述项目;否则使用 <0>/init 初始化。" + }, + "common.action.cancel": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/components/SetupProjectDialog.tsx", 84]], + "translation": "取消" + }, + "project.setup.action.setting_up": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/components/SetupProjectDialog.tsx", 93]], + "translation": "正在设置..." + }, + "project.setup.action.setup": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/components/SetupProjectDialog.tsx", 96]], + "translation": "设置项目" + }, + "directory_picker.current": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/components/DirectoryPicker.tsx", 41]], + "translation": "当前:" + }, + "directory_picker.show_hidden": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/components/DirectoryPicker.tsx", 52]], + "translation": "显示隐藏文件" + }, + "directory_picker.loading": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/components/DirectoryPicker.tsx", 58]], + "translation": "加载中..." + }, + "directory_picker.no_directories": { + "placeholders": {}, + "comments": [], + "origin": [["src/app/projects/components/DirectoryPicker.tsx", 88]], + "translation": "未找到目录" + }, + "sidebar.show.session.list": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/MobileSidebar.tsx", + 202 + ], + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SessionSidebar.tsx", + 46 + ] + ], + "translation": "显示会话列表" + }, + "sidebar.show.mcp.settings": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/MobileSidebar.tsx", + 226 + ], + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SessionSidebar.tsx", + 59 + ] + ], + "translation": "显示 MCP 服务器设置" + }, + "sidebar.show.scheduler.jobs": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SessionSidebar.tsx", + 65 + ] + ], + "translation": "显示定时任务" + }, + "sidebar.back.to.projects": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/MobileSidebar.tsx", + 177 + ], + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SessionSidebar.tsx", + 95 + ] + ], + "translation": "返回项目列表" + }, + "mcp.title": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/McpTab.tsx", + 38 + ] + ], + "translation": "MCP 服务器" + }, + "Reload MCP servers": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/McpTab.tsx", + 46 + ] + ], + "translation": "重新加载 MCP 服务器" + }, + "mcp.error.load_failed": { + "placeholders": { + "error": ["(error as Error).message"] + }, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/McpTab.tsx", + 66 + ] + ], + "translation": "加载 MCP 服务器失败:{error}" + }, + "mcp.no.servers": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/McpTab.tsx", + 75 + ] + ], + "translation": "未找到 MCP 服务器" + }, + "control.branch": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/SessionPageMain.tsx", + 162 + ], + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/SessionPageMain.tsx", + 250 + ] + ], + "translation": "分支" + }, + "control.session_id": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/SessionPageMain.tsx", + 177 + ], + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/SessionPageMain.tsx", + 238 + ] + ], + "translation": "会话 ID" + }, + "session.conversation.running": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/SessionPageMain.tsx", + 188 + ] + ], + "translation": "运行中" + }, + "session.conversation.paused": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/SessionPageMain.tsx", + 197 + ] + ], + "translation": "已暂停" + }, + "control.metadata": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/SessionPageMain.tsx", + 215 + ] + ], + "translation": "元数据" + }, + "control.project_path": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/SessionPageMain.tsx", + 221 + ] + ], + "translation": "项目路径" + }, + "session.processing": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/SessionPageMain.tsx", + 288 + ] + ], + "translation": "Claude Code 正在处理..." + }, + "sessions.title": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SessionsTab.tsx", + 76 + ] + ], + "translation": "会话" + }, + "sessions.new": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SessionsTab.tsx", + 92 + ] + ], + "translation": "新建" + }, + "sessions.total": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SessionsTab.tsx", + 98 + ] + ], + "translation": "总计" + }, + "session.status.running": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SessionsTab.tsx", + 143 + ] + ], + "translation": "运行中" + }, + "session.status.paused": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SessionsTab.tsx", + 145 + ] + ], + "translation": "已暂停" + }, + "common.loading": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 419 + ], + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SessionsTab.tsx", + 180 + ] + ], + "translation": "加载中..." + }, + "sessions.load.more": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SessionsTab.tsx", + 182 + ] + ], + "translation": "加载更多" + }, + "chat.resume": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/resumeChat/ResumeChat.tsx", + 48 + ] + ], + "translation": "继续" + }, + "chat.send": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/resumeChat/ContinueChat.tsx", + 60 + ] + ], + "translation": "发送" + }, + "scheduler.title": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 166 + ] + ], + "translation": "定时任务" + }, + "scheduler.error.load_failed": { + "placeholders": { + "error": ["error.message"] + }, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 211 + ] + ], + "translation": "加载定时任务失败:{error}" + }, + "scheduler.no_jobs": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 220 + ] + ], + "translation": "暂无定时任务" + }, + "scheduler.status.enabled": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 242 + ] + ], + "translation": "已启用" + }, + "scheduler.status.disabled": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 244 + ] + ], + "translation": "已禁用" + }, + "scheduler.last_run": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 276 + ] + ], + "translation": "上次运行" + }, + "scheduler.delete_dialog.title": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 319 + ] + ], + "translation": "删除定时任务" + }, + "scheduler.delete_dialog.description": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 322 + ] + ], + "translation": "确定要删除此定时任务吗?此操作无法撤销。" + }, + "common.cancel": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 348 + ], + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 334 + ] + ], + "translation": "取消" + }, + "common.deleting": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 342 + ] + ], + "translation": "删除中..." + }, + "common.delete": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 344 + ] + ], + "translation": "删除" + }, + "control.git": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/resumeChat/ChatActionMenu.tsx", + 55 + ] + ], + "translation": "Git" + }, + "control.new": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/resumeChat/ChatActionMenu.tsx", + 75 + ] + ], + "translation": "新建" + }, + "session.conversation.abort": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/resumeChat/ChatActionMenu.tsx", + 129 + ] + ], + "translation": "中止" + }, + "settings.session.display": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/MobileSidebar.tsx", + 110 + ] + ], + "translation": "会话显示" + }, + "settings.notifications": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/MobileSidebar.tsx", + 117 + ] + ], + "translation": "通知" + }, + "Close sidebar": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/MobileSidebar.tsx", + 153 + ] + ], + "translation": "关闭侧边栏" + }, + "system.info.tab.title": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/MobileSidebar.tsx", + 271 + ] + ], + "translation": "显示系统信息" + }, + "assistant.tool.view_task": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationModal/SidechainConversationModal.tsx", + 67 + ] + ], + "translation": "查看任务" + }, + "assistant.tool.task_id": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationModal/SidechainConversationModal.tsx", + 96 + ] + ], + "translation": "任务 ID" + }, + "assistant.tool.message_count": { + "placeholders": { + "count": ["messageCount"] + }, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationModal/SidechainConversationModal.tsx", + 103 + ] + ], + "translation": "{count} 条消息" + }, + "scheduler.dialog.title.edit": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 164 + ] + ], + "translation": "编辑定时任务" + }, + "scheduler.dialog.title.create": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 166 + ] + ], + "translation": "创建定时任务" + }, + "scheduler.dialog.description": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 170 + ] + ], + "translation": "配置定时任务以向 Claude Code 发送消息" + }, + "scheduler.form.enabled": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 179 + ] + ], + "translation": "启用" + }, + "scheduler.form.enabled.description": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 182 + ] + ], + "translation": "启用或禁用此定时任务" + }, + "scheduler.form.name": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 196 + ] + ], + "translation": "任务名称" + }, + "scheduler.form.schedule_type": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 213 + ] + ], + "translation": "调度类型" + }, + "scheduler.form.schedule_type.cron": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 227 + ] + ], + "translation": "循环执行(Cron)" + }, + "scheduler.form.schedule_type.reserved": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 230 + ] + ], + "translation": "一次性执行" + }, + "scheduler.form.reserved_time": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 245 + ] + ], + "translation": "预定执行时间" + }, + "scheduler.form.reserved_time.hint": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 255 + ] + ], + "translation": "将在指定的日期和时间执行一次,然后自动删除" + }, + "scheduler.form.message": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 263 + ] + ], + "translation": "消息内容" + }, + "scheduler.form.message.hint": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 309 + ] + ], + "translation": "输入 / 获取命令补全,@ 获取文件补全" + }, + "scheduler.form.concurrency_policy": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 317 + ] + ], + "translation": "并发策略" + }, + "scheduler.form.concurrency_policy.skip": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 331 + ] + ], + "translation": "如果已在运行则跳过" + }, + "scheduler.form.concurrency_policy.run": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 334 + ] + ], + "translation": "即使已在运行也执行" + }, + "common.saving": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 355 + ] + ], + "translation": "保存中..." + }, + "common.update": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 357 + ] + ], + "translation": "更新" + }, + "common.create": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 359 + ] + ], + "translation": "创建" + }, + "user.content.image": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/UserConversationContent.tsx", + 49 + ] + ], + "translation": "附加图片" + }, + "user.content.unsupported_media": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/UserConversationContent.tsx", + 86 + ] + ], + "translation": "不支持的媒体" + }, + "common.error": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/UserConversationContent.tsx", + 89 + ], + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/UserConversationContent.tsx", + 195 + ] + ], + "translation": "错误" + }, + "user.content.unsupported_media.description": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/UserConversationContent.tsx", + 93 + ] + ], + "translation": "不支持显示此媒体格式" + }, + "user.content.document.pdf": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/UserConversationContent.tsx", + 115 + ] + ], + "translation": "PDF 文档" + }, + "user.content.document.text": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/UserConversationContent.tsx", + 157 + ] + ], + "translation": "文本文档" + }, + "user.content.unsupported_document": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/UserConversationContent.tsx", + 192 + ] + ], + "translation": "不支持的文档" + }, + "user.content.unsupported_document.description": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/UserConversationContent.tsx", + 199 + ] + ], + "translation": "不支持显示此文档类型" + }, + "conversation.error.schema": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/ConversationList.tsx", + 55 + ] + ], + "translation": "模式错误" + }, + "conversation.error.schema_validation": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/ConversationList.tsx", + 70 + ] + ], + "translation": "模式验证错误" + }, + "conversation.error.schema_validation.description": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/ConversationList.tsx", + 73 + ] + ], + "translation": "无法解析此对话条目。这可能是由于格式更改或解析问题。" + }, + "conversation.error.report_issue": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/ConversationList.tsx", + 80 + ] + ], + "translation": "报告此问题" + }, + "conversation.error.raw_content": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/ConversationList.tsx", + 87 + ] + ], + "translation": "原始数据:" + }, + "chat.modal.title": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/newChat/NewChatModal.tsx", 33] + ], + "translation": "开始新对话" + }, + "Type your message here... (Start with / for commands, @ for files, Enter to send)": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/newChat/NewChat.tsx", 28] + ], + "translation": "在此输入消息...(输入 / 使用命令,@ 使用文件,Enter 发送)" + }, + "Type your message here... (Start with / for commands, @ for files, Command+Enter to send)": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/newChat/NewChat.tsx", 33] + ], + "translation": "在此输入消息...(输入 / 使用命令,@ 使用文件,Command+Enter 发送)" + }, + "Type your message here... (Start with / for commands, @ for files, Shift+Enter to send)": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/newChat/NewChat.tsx", 37] + ], + "translation": "在此输入消息...(输入 / 使用命令,@ 使用文件,Shift+Enter 发送)" + }, + "chat.button.start": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/newChat/NewChat.tsx", 49] + ], + "translation": "开始对话" + }, + "cron_builder.sunday": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 30 + ] + ], + "translation": "星期日" + }, + "cron_builder.monday": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 34 + ] + ], + "translation": "星期一" + }, + "cron_builder.tuesday": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 38 + ] + ], + "translation": "星期二" + }, + "cron_builder.wednesday": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 42 + ] + ], + "translation": "星期三" + }, + "cron_builder.thursday": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 46 + ] + ], + "translation": "星期四" + }, + "cron_builder.friday": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 50 + ] + ], + "translation": "星期五" + }, + "cron_builder.saturday": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 54 + ] + ], + "translation": "星期六" + }, + "cron_builder.schedule_type": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 210 + ] + ], + "translation": "调度类型" + }, + "cron_builder.hourly": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 218 + ] + ], + "translation": "每小时" + }, + "cron_builder.daily": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 221 + ] + ], + "translation": "每天" + }, + "cron_builder.weekly": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 224 + ] + ], + "translation": "每周" + }, + "cron_builder.custom": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 227 + ] + ], + "translation": "自定义" + }, + "cron_builder.hour": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 237 + ], + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 287 + ] + ], + "translation": "小时(0-23)" + }, + "cron_builder.minute": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 249 + ], + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 299 + ] + ], + "translation": "分钟(0-59)" + }, + "cron_builder.day_of_week": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 266 + ] + ], + "translation": "星期" + }, + "cron_builder.cron_expression": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 316 + ] + ], + "translation": "Cron 表达式" + }, + "cron_builder.preview": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 328 + ] + ], + "translation": "预览" + }, + "cron_builder.expression": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/CronExpressionBuilder.tsx", + 340 + ] + ], + "translation": "Cron 表达式" + }, + "Available files and directories": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/components/chatForm/FileCompletion.tsx", + 267 + ] + ], + "translation": "可用的文件和目录" + }, + "diff.files.changed": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 53 + ] + ], + "translation": "个文件已更改" + }, + "diff.files": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 56 + ] + ], + "translation": "文件" + }, + "Uncommitted changes": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 181 + ] + ], + "translation": "未提交的更改" + }, + "Failed to commit": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 312 + ] + ], + "translation": "提交失败" + }, + "Failed to push": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 330 + ] + ], + "translation": "推送失败" + }, + "Retry Push": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 365 + ] + ], + "translation": "重试推送" + }, + "Failed to commit and push": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 378 + ] + ], + "translation": "提交和推送失败" + }, + "Compare from": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 397 + ] + ], + "translation": "比较起点" + }, + "Compare to": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 403 + ] + ], + "translation": "比较终点" + }, + "diff.commit.changes": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 469 + ] + ], + "translation": "提交更改" + }, + "diff.select.all": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 490 + ] + ], + "translation": "全选" + }, + "diff.deselect.all": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 498 + ] + ], + "translation": "取消全选" + }, + "diff.commit.message": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 538 + ] + ], + "translation": "提交信息" + }, + "diff.committing": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 561 + ] + ], + "translation": "提交中..." + }, + "diff.commit": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 564 + ] + ], + "translation": "提交" + }, + "diff.pushing": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 576 + ] + ], + "translation": "推送中..." + }, + "diff.push": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 579 + ] + ], + "translation": "推送" + }, + "diff.committing.pushing": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 593 + ] + ], + "translation": "提交并推送中..." + }, + "diff.commit.push": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 596 + ] + ], + "translation": "提交并推送" + }, + "diff.select.file": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 604 + ] + ], + "translation": "请至少选择一个文件" + }, + "diff.enter.message": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 606 + ] + ], + "translation": "请输入提交信息" + }, + "diff.loading": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/diffModal/DiffModal.tsx", + 642 + ] + ], + "translation": "加载差异中..." + }, + "assistant.thinking": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/AssistantConversationContent.tsx", + 61 + ] + ], + "translation": "思考中" + }, + "assistant.tool.view_task_details": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/AssistantConversationContent.tsx", + 118 + ] + ], + "translation": "查看任务详情" + }, + "assistant.tool.tool_id": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/AssistantConversationContent.tsx", + 157 + ] + ], + "translation": "工具 ID" + }, + "assistant.tool.input_parameters": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/AssistantConversationContent.tsx", + 165 + ] + ], + "translation": "输入参数" + }, + "assistant.tool.result": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/conversationList/AssistantConversationContent.tsx", + 179 + ] + ], + "translation": "工具结果" + }, + "Available commands": { + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/components/chatForm/CommandCompletion.tsx", + 193 + ] + ], + "translation": "可用命令" + }, + "chat.error.send_failed": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/chatForm/ChatInput.tsx", 375] + ], + "translation": "发送消息失败。请重试。" + }, + "Message input with completion support": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/chatForm/ChatInput.tsx", 411] + ], + "translation": "带补全支持的消息输入" + }, + "chat.attach_file": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/chatForm/ChatInput.tsx", 460] + ], + "translation": "附加" + }, + "chat.autocomplete.active": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/chatForm/ChatInput.tsx", 472] + ], + "translation": "自动补全已激活" + }, + "chat.send_mode.label": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/chatForm/ChatInput.tsx", 481] + ], + "translation": "发送模式" + }, + "chat.send_mode.immediate": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/chatForm/ChatInput.tsx", 498] + ], + "translation": "立即发送" + }, + "chat.send_mode.scheduled": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/chatForm/ChatInput.tsx", 501] + ], + "translation": "定时发送" + }, + "chat.send_mode.scheduled_time": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/chatForm/ChatInput.tsx", 512] + ], + "translation": "定时发送时间" + }, + "chat.status.processing": { + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/chatForm/ChatInput.tsx", 541] + ], + "translation": "处理中..." + }, + "scheduler.create_job": { + "message": "Create Job", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 189 + ] + ], + "translation": "创建任务" + }, + "scheduler.job.create_failed": { + "message": "Failed to create job", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 60 + ] + ], + "translation": "创建任务失败" + }, + "scheduler.job.delete_failed": { + "message": "Failed to delete job", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 122 + ] + ], + "translation": "删除任务失败" + }, + "chat.scheduled_send.failed": { + "message": "Failed to schedule message", + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/chatForm/ChatInput.tsx", 221] + ], + "translation": "定时发送消息失败" + }, + "scheduler.job.update_failed": { + "message": "Failed to update job", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 93 + ] + ], + "translation": "更新任务失败" + }, + "scheduler.job.created": { + "message": "Job created successfully", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 51 + ] + ], + "translation": "任务创建成功" + }, + "scheduler.job.deleted": { + "message": "Job deleted successfully", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 112 + ] + ], + "translation": "任务删除成功" + }, + "scheduler.job.updated": { + "message": "Job updated successfully", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 83 + ] + ], + "translation": "任务更新成功" + }, + "scheduler.form.message.aria_label": { + "message": "Message input with completion support (/ for commands, @ for files)", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 282 + ] + ], + "translation": "带补全支持的消息输入(输入 / 使用命令,@ 使用文件)" + }, + "chat.scheduled_send.success": { + "message": "Message scheduled successfully", + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/chatForm/ChatInput.tsx", 205] + ], + "translation": "消息定时发送成功" + }, + "control.new_chat": { + "message": "New Chat", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/resumeChat/ChatActionMenu.tsx", + 68 + ] + ], + "translation": "新建对话" + }, + "control.open_git_dialog": { + "message": "Open Git Dialog", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/resumeChat/ChatActionMenu.tsx", + 48 + ] + ], + "translation": "打开 Git 对话框" + }, + "common.reload": { + "message": "Reload", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/sessionSidebar/SchedulerTab.tsx", + 175 + ] + ], + "translation": "刷新" + }, + "control.scroll_to_bottom": { + "message": "Scroll to Bottom", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/resumeChat/ChatActionMenu.tsx", + 104 + ] + ], + "translation": "滚动到底部" + }, + "control.scroll_to_top": { + "message": "Scroll to Top", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/resumeChat/ChatActionMenu.tsx", + 88 + ] + ], + "translation": "滚动到顶部" + }, + "scheduler.form.message.placeholder": { + "message": "Type message to send to Claude Code... (/ for commands, @ for files)", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/scheduler/SchedulerJobDialog.tsx", + 274 + ] + ], + "translation": "输入要发送给 Claude Code 的消息...(输入 / 使用命令,@ 使用文件)" + }, + "chat.placeholder.resume.command_enter": { + "message": "Type your message... (Start with / for commands, @ for files, Command+Enter to send)", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/resumeChat/ResumeChat.tsx", + 35 + ] + ], + "translation": "输入消息...(输入 / 使用命令,@ 使用文件,Command+Enter 发送)" + }, + "chat.placeholder.continue.command_enter": { + "message": "Type your message... (Start with / for commands, @ for files, Command+Enter to send)", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/resumeChat/ContinueChat.tsx", + 37 + ] + ], + "translation": "输入消息...(输入 / 使用命令,@ 使用文件,Command+Enter 发送)" + }, + "chat.placeholder.resume.enter": { + "message": "Type your message... (Start with / for commands, @ for files, Enter to send)", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/resumeChat/ResumeChat.tsx", + 28 + ] + ], + "translation": "输入消息...(输入 / 使用命令,@ 使用文件,Enter 发送)" + }, + "chat.placeholder.continue.enter": { + "message": "Type your message... (Start with / for commands, @ for files, Enter to send)", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/resumeChat/ContinueChat.tsx", + 30 + ] + ], + "translation": "输入消息...(输入 / 使用命令,@ 使用文件,Enter 发送)" + }, + "chat.placeholder.resume.shift_enter": { + "message": "Type your message... (Start with / for commands, @ for files, Shift+Enter to send)", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/resumeChat/ResumeChat.tsx", + 41 + ] + ], + "translation": "输入消息...(输入 / 使用命令,@ 使用文件,Shift+Enter 发送)" + }, + "chat.placeholder.continue.shift_enter": { + "message": "Type your message... (Start with / for commands, @ for files, Shift+Enter to send)", + "placeholders": {}, + "comments": [], + "origin": [ + [ + "src/app/projects/[projectId]/sessions/[sessionId]/components/resumeChat/ContinueChat.tsx", + 43 + ] + ], + "translation": "输入消息...(输入 / 使用命令,@ 使用文件,Shift+Enter 发送)" + }, + "chat.scheduled_send.success_description": { + "message": "You can view and manage it in the Scheduler tab", + "placeholders": {}, + "comments": [], + "origin": [ + ["src/app/projects/[projectId]/components/chatForm/ChatInput.tsx", 210] + ], + "translation": "您可以在定时任务选项卡中查看和管理" + } +} diff --git a/src/lib/i18n/locales/zh_CN/messages.ts b/src/lib/i18n/locales/zh_CN/messages.ts new file mode 100644 index 0000000..e9b9d83 --- /dev/null +++ b/src/lib/i18n/locales/zh_CN/messages.ts @@ -0,0 +1 @@ +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"Available commands\":[\"可用命令\"],\"Available files and directories\":[\"可用的文件和目录\"],\"Close sidebar\":[\"关闭侧边栏\"],\"Compare from\":[\"比较起点\"],\"Compare to\":[\"比较终点\"],\"Failed to commit\":[\"提交失败\"],\"Failed to commit and push\":[\"提交和推送失败\"],\"Failed to push\":[\"推送失败\"],\"Message input with completion support\":[\"带补全支持的消息输入\"],\"Reload MCP servers\":[\"重新加载 MCP 服务器\"],\"Retry Push\":[\"重试推送\"],\"Select enter key behavior\":[\"选择回车键行为\"],\"Select language\":[\"选择语言\"],\"Select permission mode\":[\"选择权限模式\"],\"Select theme\":[\"选择主题\"],\"Type your message here... (Start with / for commands, @ for files, Command+Enter to send)\":[\"在此输入消息...(输入 / 使用命令,@ 使用文件,Command+Enter 发送)\"],\"Type your message here... (Start with / for commands, @ for files, Enter to send)\":[\"在此输入消息...(输入 / 使用命令,@ 使用文件,Enter 发送)\"],\"Type your message here... (Start with / for commands, @ for files, Shift+Enter to send)\":[\"在此输入消息...(输入 / 使用命令,@ 使用文件,Shift+Enter 发送)\"],\"Uncommitted changes\":[\"未提交的更改\"],\"assistant.thinking\":[\"思考中\"],\"assistant.tool.input_parameters\":[\"输入参数\"],\"assistant.tool.message_count\":[[\"count\"],\" 条消息\"],\"assistant.tool.result\":[\"工具结果\"],\"assistant.tool.task_id\":[\"任务 ID\"],\"assistant.tool.tool_id\":[\"工具 ID\"],\"assistant.tool.view_task\":[\"查看任务\"],\"assistant.tool.view_task_details\":[\"查看任务详情\"],\"chat.attach_file\":[\"附加\"],\"chat.autocomplete.active\":[\"自动补全已激活\"],\"chat.button.start\":[\"开始对话\"],\"chat.error.send_failed\":[\"发送消息失败。请重试。\"],\"chat.modal.title\":[\"开始新对话\"],\"chat.placeholder.continue.command_enter\":[\"输入消息...(输入 / 使用命令,@ 使用文件,Command+Enter 发送)\"],\"chat.placeholder.continue.enter\":[\"输入消息...(输入 / 使用命令,@ 使用文件,Enter 发送)\"],\"chat.placeholder.continue.shift_enter\":[\"输入消息...(输入 / 使用命令,@ 使用文件,Shift+Enter 发送)\"],\"chat.placeholder.resume.command_enter\":[\"输入消息...(输入 / 使用命令,@ 使用文件,Command+Enter 发送)\"],\"chat.placeholder.resume.enter\":[\"输入消息...(输入 / 使用命令,@ 使用文件,Enter 发送)\"],\"chat.placeholder.resume.shift_enter\":[\"输入消息...(输入 / 使用命令,@ 使用文件,Shift+Enter 发送)\"],\"chat.resume\":[\"继续\"],\"chat.scheduled_send.failed\":[\"定时发送消息失败\"],\"chat.scheduled_send.success\":[\"消息定时发送成功\"],\"chat.scheduled_send.success_description\":[\"您可以在定时任务选项卡中查看和管理\"],\"chat.send\":[\"发送\"],\"chat.send_mode.immediate\":[\"立即发送\"],\"chat.send_mode.label\":[\"发送模式\"],\"chat.send_mode.scheduled\":[\"定时发送\"],\"chat.send_mode.scheduled_time\":[\"定时发送时间\"],\"chat.status.processing\":[\"处理中...\"],\"common.action.cancel\":[\"取消\"],\"common.cancel\":[\"取消\"],\"common.create\":[\"创建\"],\"common.delete\":[\"删除\"],\"common.deleting\":[\"删除中...\"],\"common.error\":[\"错误\"],\"common.loading\":[\"加载中...\"],\"common.reload\":[\"刷新\"],\"common.saving\":[\"保存中...\"],\"common.update\":[\"更新\"],\"control.branch\":[\"分支\"],\"control.git\":[\"Git\"],\"control.metadata\":[\"元数据\"],\"control.new\":[\"新建\"],\"control.new_chat\":[\"新建对话\"],\"control.open_git_dialog\":[\"打开 Git 对话框\"],\"control.project_path\":[\"项目路径\"],\"control.scroll_to_bottom\":[\"滚动到底部\"],\"control.scroll_to_top\":[\"滚动到顶部\"],\"control.session_id\":[\"会话 ID\"],\"conversation.error.raw_content\":[\"原始数据:\"],\"conversation.error.report_issue\":[\"报告此问题\"],\"conversation.error.schema\":[\"模式错误\"],\"conversation.error.schema_validation\":[\"模式验证错误\"],\"conversation.error.schema_validation.description\":[\"无法解析此对话条目。这可能是由于格式更改或解析问题。\"],\"cron_builder.cron_expression\":[\"Cron 表达式\"],\"cron_builder.custom\":[\"自定义\"],\"cron_builder.daily\":[\"每天\"],\"cron_builder.day_of_week\":[\"星期\"],\"cron_builder.expression\":[\"Cron 表达式\"],\"cron_builder.friday\":[\"星期五\"],\"cron_builder.hour\":[\"小时(0-23)\"],\"cron_builder.hourly\":[\"每小时\"],\"cron_builder.minute\":[\"分钟(0-59)\"],\"cron_builder.monday\":[\"星期一\"],\"cron_builder.preview\":[\"预览\"],\"cron_builder.saturday\":[\"星期六\"],\"cron_builder.schedule_type\":[\"调度类型\"],\"cron_builder.sunday\":[\"星期日\"],\"cron_builder.thursday\":[\"星期四\"],\"cron_builder.tuesday\":[\"星期二\"],\"cron_builder.wednesday\":[\"星期三\"],\"cron_builder.weekly\":[\"每周\"],\"diff.commit\":[\"提交\"],\"diff.commit.changes\":[\"提交更改\"],\"diff.commit.message\":[\"提交信息\"],\"diff.commit.push\":[\"提交并推送\"],\"diff.committing\":[\"提交中...\"],\"diff.committing.pushing\":[\"提交并推送中...\"],\"diff.deselect.all\":[\"取消全选\"],\"diff.enter.message\":[\"请输入提交信息\"],\"diff.files\":[\"文件\"],\"diff.files.changed\":[\"个文件已更改\"],\"diff.loading\":[\"加载差异中...\"],\"diff.push\":[\"推送\"],\"diff.pushing\":[\"推送中...\"],\"diff.select.all\":[\"全选\"],\"diff.select.file\":[\"请至少选择一个文件\"],\"directory_picker.current\":[\"当前:\"],\"directory_picker.loading\":[\"加载中...\"],\"directory_picker.no_directories\":[\"未找到目录\"],\"directory_picker.show_hidden\":[\"显示隐藏文件\"],\"mcp.error.load_failed\":[\"加载 MCP 服务器失败:\",[\"error\"]],\"mcp.no.servers\":[\"未找到 MCP 服务器\"],\"mcp.title\":[\"MCP 服务器\"],\"notfound.button.go_home\":[\"返回首页\"],\"notfound.default.description\":[\"您查找的页面不存在或已被移动。\"],\"notfound.default.title\":[\"页面未找到\"],\"notfound.project.description\":[\"您查找的项目不存在。\"],\"notfound.project.title\":[\"未找到项目\"],\"notfound.session.description\":[\"您查找的会话不存在。\"],\"notfound.session.title\":[\"会话未找到\"],\"notification.beep\":[\"哔哔声\"],\"notification.chime\":[\"铃声\"],\"notification.description\":[\"选择 Claude Code 任务完成时播放的提示音\"],\"notification.none\":[\"无\"],\"notification.ping\":[\"Ping 音\"],\"notification.pop\":[\"Pop 音\"],\"notification.test\":[\"测试\"],\"project.new\":[\"新建项目\"],\"project.setup.action.setting_up\":[\"正在设置...\"],\"project.setup.action.setup\":[\"设置项目\"],\"project.setup.description\":[\"导航到要设置为 Claude Code 项目的目录。如果存在 CLAUDE.md,它将描述项目;否则使用 <0>/init 初始化。\"],\"project.setup.title\":[\"设置新项目\"],\"project_list.last_modified\":[\"最后修改时间:\"],\"project_list.messages\":[\"消息数:\"],\"project_list.no_projects.description\":[\"在您的 ~/.claude/projects 目录中未找到 Claude Code 项目。与 Claude Code 开始对话以创建您的第一个项目。\"],\"project_list.no_projects.title\":[\"未找到项目\"],\"project_list.view_conversations\":[\"查看对话\"],\"projects.page.description\":[\"查看 Claude Code 对话历史和项目操作\"],\"projects.page.loading\":[\"正在加载项目...\"],\"projects.page.title\":[\"项目\"],\"scheduler.create_job\":[\"创建任务\"],\"scheduler.delete_dialog.description\":[\"确定要删除此定时任务吗?此操作无法撤销。\"],\"scheduler.delete_dialog.title\":[\"删除定时任务\"],\"scheduler.dialog.description\":[\"配置定时任务以向 Claude Code 发送消息\"],\"scheduler.dialog.title.create\":[\"创建定时任务\"],\"scheduler.dialog.title.edit\":[\"编辑定时任务\"],\"scheduler.error.load_failed\":[\"加载定时任务失败:\",[\"error\"]],\"scheduler.form.concurrency_policy\":[\"并发策略\"],\"scheduler.form.concurrency_policy.run\":[\"即使已在运行也执行\"],\"scheduler.form.concurrency_policy.skip\":[\"如果已在运行则跳过\"],\"scheduler.form.enabled\":[\"启用\"],\"scheduler.form.enabled.description\":[\"启用或禁用此定时任务\"],\"scheduler.form.message\":[\"消息内容\"],\"scheduler.form.message.aria_label\":[\"带补全支持的消息输入(输入 / 使用命令,@ 使用文件)\"],\"scheduler.form.message.hint\":[\"输入 / 获取命令补全,@ 获取文件补全\"],\"scheduler.form.message.placeholder\":[\"输入要发送给 Claude Code 的消息...(输入 / 使用命令,@ 使用文件)\"],\"scheduler.form.name\":[\"任务名称\"],\"scheduler.form.reserved_time\":[\"预定执行时间\"],\"scheduler.form.reserved_time.hint\":[\"将在指定的日期和时间执行一次,然后自动删除\"],\"scheduler.form.schedule_type\":[\"调度类型\"],\"scheduler.form.schedule_type.cron\":[\"循环执行(Cron)\"],\"scheduler.form.schedule_type.reserved\":[\"一次性执行\"],\"scheduler.job.create_failed\":[\"创建任务失败\"],\"scheduler.job.created\":[\"任务创建成功\"],\"scheduler.job.delete_failed\":[\"删除任务失败\"],\"scheduler.job.deleted\":[\"任务删除成功\"],\"scheduler.job.update_failed\":[\"更新任务失败\"],\"scheduler.job.updated\":[\"任务更新成功\"],\"scheduler.last_run\":[\"上次运行\"],\"scheduler.no_jobs\":[\"暂无定时任务\"],\"scheduler.status.disabled\":[\"已禁用\"],\"scheduler.status.enabled\":[\"已启用\"],\"scheduler.title\":[\"定时任务\"],\"session.conversation.abort\":[\"中止\"],\"session.conversation.paused\":[\"已暂停\"],\"session.conversation.running\":[\"运行中\"],\"session.processing\":[\"Claude Code 正在处理...\"],\"session.status.paused\":[\"已暂停\"],\"session.status.running\":[\"运行中\"],\"sessions.load.more\":[\"加载更多\"],\"sessions.new\":[\"新建\"],\"sessions.title\":[\"会话\"],\"sessions.total\":[\"总计\"],\"settings.description\":[\"显示和行为设置\"],\"settings.input.enter_key_behavior\":[\"回车键行为\"],\"settings.input.enter_key_behavior.command_enter\":[\"使用 Command+Enter 发送\"],\"settings.input.enter_key_behavior.description\":[\"选择消息输入的回车键行为\"],\"settings.input.enter_key_behavior.enter\":[\"使用 Enter 发送\"],\"settings.input.enter_key_behavior.shift_enter\":[\"使用 Shift+Enter 发送(默认)\"],\"settings.loading\":[\"正在加载设置...\"],\"settings.locale\":[\"语言\"],\"settings.locale.description\":[\"选择您偏好的语言\"],\"settings.locale.en\":[\"英语\"],\"settings.locale.ja\":[\"日语\"],\"settings.locale.zh_CN\":[\"简体中文\"],\"settings.notifications\":[\"通知\"],\"settings.permission.mode\":[\"权限模式\"],\"settings.permission.mode.accept_edits\":[\"接受编辑(自动批准文件编辑)\"],\"settings.permission.mode.bypass_permissions\":[\"跳过权限(无提示)\"],\"settings.permission.mode.default\":[\"默认(确认权限)\"],\"settings.permission.mode.description\":[\"控制如何处理文件操作权限请求\"],\"settings.permission.mode.plan\":[\"计划模式(仅规划)\"],\"settings.permission.mode.unavailable\":[\"此功能在您的 Claude Code 版本中不可用。所有工具都会自动批准。\"],\"settings.section.notifications\":[\"通知\"],\"settings.section.session_display\":[\"会话显示\"],\"settings.section.system_info\":[\"系统信息\"],\"settings.session.display\":[\"会话显示\"],\"settings.session.hide_no_user_message\":[\"隐藏无用户消息的会话\"],\"settings.session.hide_no_user_message.description\":[\"仅显示包含用户命令或消息的会话\"],\"settings.session.unify_same_title\":[\"合并同名会话\"],\"settings.session.unify_same_title.description\":[\"当多个会话标题相同时,仅显示最新的会话\"],\"settings.tab.title\":[\"显示和通知设置\"],\"settings.theme\":[\"主题\"],\"settings.theme.dark\":[\"深色\"],\"settings.theme.description\":[\"选择您偏好的颜色主题\"],\"settings.theme.light\":[\"浅色\"],\"settings.theme.system\":[\"跟随系统\"],\"settings.title\":[\"设置\"],\"sidebar.back.to.projects\":[\"返回项目列表\"],\"sidebar.show.mcp.settings\":[\"显示 MCP 服务器设置\"],\"sidebar.show.scheduler.jobs\":[\"显示定时任务\"],\"sidebar.show.session.list\":[\"显示会话列表\"],\"system.info.tab.title\":[\"显示系统信息\"],\"system_info.available_features\":[\"可用功能\"],\"system_info.claude_code\":[\"Claude Code\"],\"system_info.description\":[\"版本和功能信息\"],\"system_info.executable_path\":[\"可执行文件路径\"],\"system_info.feature.agent_sdk.description\":[\"使用 @anthropic-ai/claude-agent-sdk 而非 @anthropic-ai/claude-code\"],\"system_info.feature.agent_sdk.title\":[\"扩展 Agent 模式\"],\"system_info.feature.tool_approval.description\":[\"在 Claude 执行工具前批准或拒绝,让您完全掌控操作\"],\"system_info.feature.tool_approval.title\":[\"工具审批\"],\"system_info.feature.unknown.description\":[\"功能信息不可用\"],\"system_info.title\":[\"系统信息\"],\"system_info.unknown\":[\"未知\"],\"system_info.version_label\":[\"版本\"],\"system_info.viewer_version\":[\"Claude Code Viewer\"],\"user.content.document.pdf\":[\"PDF 文档\"],\"user.content.document.text\":[\"文本文档\"],\"user.content.image\":[\"附加图片\"],\"user.content.unsupported_document\":[\"不支持的文档\"],\"user.content.unsupported_document.description\":[\"不支持显示此文档类型\"],\"user.content.unsupported_media\":[\"不支持的媒体\"],\"user.content.unsupported_media.description\":[\"不支持显示此媒体格式\"]}")as Messages; \ No newline at end of file diff --git a/src/lib/i18n/schema.ts b/src/lib/i18n/schema.ts index 8be3fb2..0c02a12 100644 --- a/src/lib/i18n/schema.ts +++ b/src/lib/i18n/schema.ts @@ -1,4 +1,4 @@ import z from "zod"; -export const localeSchema = z.enum(["ja", "en"]); +export const localeSchema = z.enum(["ja", "en", "zh_CN"]); export type SupportedLocale = z.infer;