初步集成next-intl支持多语言

This commit is contained in:
xintaofei
2026-03-07 10:08:05 +08:00
parent efd87dbd9c
commit 934f689b08
20 changed files with 1186 additions and 89 deletions

75
src/i18n/messages/en.json Normal file
View File

@@ -0,0 +1,75 @@
{
"Language": {
"followSystem": "Follow System",
"english": "English",
"simplifiedChinese": "Simplified Chinese",
"traditionalChinese": "Traditional Chinese"
},
"SettingsShell": {
"title": "Settings",
"preferences": "Preferences",
"nav": {
"appearance": "Appearance",
"agents": "Agents",
"mcp": "MCP",
"skills": "Skills",
"shortcuts": "Shortcuts",
"system": "System"
}
},
"AppearanceSettings": {
"sectionTitle": "Theme Appearance",
"sectionDescription": "Choose light, dark, or follow system. Settings are saved automatically.",
"themeMode": "Theme mode",
"placeholder": "Select theme mode",
"system": "Follow system",
"light": "Light",
"dark": "Dark",
"currentTheme": "Current effective theme: {theme}",
"resolvedTheme": {
"light": "Light",
"dark": "Dark",
"unknown": "--"
}
},
"SystemSettings": {
"loading": "Loading...",
"sectionTitle": "System Management",
"sectionDescription": "Manage network proxy, app updates and language preferences.",
"proxyTitle": "Network Proxy",
"proxyDescription": "When enabled, subsequent network requests prefer this proxy (including ACP chat, agent installation and Git remote operations).",
"loadFailed": "Load failed: {message}",
"enableProxy": "Enable system proxy",
"proxyAddress": "Proxy address",
"proxyHint": "Supports http(s)/socks5, example: {example}. Only effective when system proxy is enabled.",
"save": "Save",
"saving": "Saving...",
"proxyRequired": "Proxy URL is required when proxy is enabled",
"saveSuccess": "System proxy settings saved",
"saveFailed": "Save failed: {message}",
"languageTitle": "Language",
"languageDescription": "Set app language. When following system locale, unsupported languages fall back to English.",
"appLanguage": "App language",
"languageSaveSuccess": "Language settings saved",
"languageSaveFailed": "Failed to save language settings: {message}",
"updateTitle": "App Update",
"updateDescription": "Check the configured release source for newer versions and install directly when available.",
"currentVersion": "Current version",
"upgradableVersion": "Available version",
"none": "None",
"lastChecked": "Last checked: {time}",
"updateError": "Update error: {message}",
"checking": "Checking...",
"checkUpdate": "Check for updates",
"updating": "Installing...",
"upgradeTo": "Upgrade to v{version}",
"foundUpdate": "New version v{version} found",
"alreadyLatest": "You're on the latest version",
"checkUpdateFailed": "Failed to check for updates: {message}",
"installSuccess": "Update installed. Relaunching app.",
"installFailed": "Update failed: {message}"
},
"SettingsPages": {
"agentsLoading": "Loading agent settings..."
}
}

View File

@@ -0,0 +1,75 @@
{
"Language": {
"followSystem": "跟随系统",
"english": "English",
"simplifiedChinese": "简体中文",
"traditionalChinese": "繁體中文"
},
"SettingsShell": {
"title": "设置",
"preferences": "偏好设置",
"nav": {
"appearance": "外观",
"agents": "Agents",
"mcp": "MCP",
"skills": "Skills",
"shortcuts": "快捷键",
"system": "系统"
}
},
"AppearanceSettings": {
"sectionTitle": "主题外观",
"sectionDescription": "选择浅色、深色或跟随系统主题,设置会自动保存。",
"themeMode": "主题模式",
"placeholder": "请选择主题模式",
"system": "跟随系统",
"light": "浅色",
"dark": "深色",
"currentTheme": "当前生效主题:{theme}",
"resolvedTheme": {
"light": "浅色",
"dark": "深色",
"unknown": "--"
}
},
"SystemSettings": {
"loading": "加载中...",
"sectionTitle": "系统管理",
"sectionDescription": "管理网络代理、应用升级与语言偏好。",
"proxyTitle": "网络代理",
"proxyDescription": "开启后,后续网络请求将优先走该代理(包括 ACP 对话、Agent 安装、Git 远程操作等)。",
"loadFailed": "加载失败:{message}",
"enableProxy": "启用系统代理",
"proxyAddress": "代理地址",
"proxyHint": "支持 http(s)/socks5示例{example}。仅在启用系统代理时生效。",
"save": "保存",
"saving": "保存中...",
"proxyRequired": "启用代理时必须填写代理地址",
"saveSuccess": "系统代理设置已保存",
"saveFailed": "保存失败:{message}",
"languageTitle": "语言",
"languageDescription": "设置应用语言。跟随系统时,若系统语言不受支持将回退为英文。",
"appLanguage": "应用语言",
"languageSaveSuccess": "语言设置已保存",
"languageSaveFailed": "语言设置保存失败:{message}",
"updateTitle": "应用升级",
"updateDescription": "点击检查后会从配置的发布源拉取最新版本信息,有新版本时可直接下载并安装。",
"currentVersion": "当前版本",
"upgradableVersion": "可升级版本",
"none": "暂无",
"lastChecked": "上次检查:{time}",
"updateError": "更新异常:{message}",
"checking": "检查中...",
"checkUpdate": "检查更新",
"updating": "升级中...",
"upgradeTo": "升级到 v{version}",
"foundUpdate": "发现新版本 v{version}",
"alreadyLatest": "当前已经是最新版本",
"checkUpdateFailed": "检查更新失败:{message}",
"installSuccess": "升级包已安装,正在重启应用",
"installFailed": "升级失败:{message}"
},
"SettingsPages": {
"agentsLoading": "加载 Agent 设置中..."
}
}

View File

@@ -0,0 +1,75 @@
{
"Language": {
"followSystem": "跟隨系統",
"english": "English",
"simplifiedChinese": "简体中文",
"traditionalChinese": "繁體中文"
},
"SettingsShell": {
"title": "設定",
"preferences": "偏好設定",
"nav": {
"appearance": "外觀",
"agents": "Agents",
"mcp": "MCP",
"skills": "Skills",
"shortcuts": "快捷鍵",
"system": "系統"
}
},
"AppearanceSettings": {
"sectionTitle": "主題外觀",
"sectionDescription": "選擇淺色、深色或跟隨系統主題,設定會自動儲存。",
"themeMode": "主題模式",
"placeholder": "請選擇主題模式",
"system": "跟隨系統",
"light": "淺色",
"dark": "深色",
"currentTheme": "目前生效主題:{theme}",
"resolvedTheme": {
"light": "淺色",
"dark": "深色",
"unknown": "--"
}
},
"SystemSettings": {
"loading": "載入中...",
"sectionTitle": "系統管理",
"sectionDescription": "管理網路代理、應用升級與語言偏好。",
"proxyTitle": "網路代理",
"proxyDescription": "啟用後,後續網路請求將優先走該代理(包含 ACP 對話、Agent 安裝、Git 遠端操作等)。",
"loadFailed": "載入失敗:{message}",
"enableProxy": "啟用系統代理",
"proxyAddress": "代理位址",
"proxyHint": "支援 http(s)/socks5範例{example}。僅在啟用系統代理時生效。",
"save": "儲存",
"saving": "儲存中...",
"proxyRequired": "啟用代理時必須填寫代理位址",
"saveSuccess": "系統代理設定已儲存",
"saveFailed": "儲存失敗:{message}",
"languageTitle": "語言",
"languageDescription": "設定應用語言。跟隨系統時,若系統語言不受支援將回退為英文。",
"appLanguage": "應用語言",
"languageSaveSuccess": "語言設定已儲存",
"languageSaveFailed": "語言設定儲存失敗:{message}",
"updateTitle": "應用升級",
"updateDescription": "點擊檢查後會從設定的發佈來源拉取最新版本資訊,有新版本時可直接下載並安裝。",
"currentVersion": "目前版本",
"upgradableVersion": "可升級版本",
"none": "暫無",
"lastChecked": "上次檢查:{time}",
"updateError": "更新異常:{message}",
"checking": "檢查中...",
"checkUpdate": "檢查更新",
"updating": "升級中...",
"upgradeTo": "升級到 v{version}",
"foundUpdate": "發現新版本 v{version}",
"alreadyLatest": "目前已是最新版本",
"checkUpdateFailed": "檢查更新失敗:{message}",
"installSuccess": "升級包已安裝,正在重新啟動應用",
"installFailed": "升級失敗:{message}"
},
"SettingsPages": {
"agentsLoading": "載入 Agent 設定中..."
}
}

7
src/i18n/request.ts Normal file
View File

@@ -0,0 +1,7 @@
import { getRequestConfig } from "next-intl/server"
import enMessages from "@/i18n/messages/en.json"
export default getRequestConfig(async () => ({
locale: "en",
messages: enMessages,
}))