Add translation management tool suite and update Chinese translations

- Introduced a comprehensive guide for the translation management tool suite, detailing components, usage, and best practices.
- Added `translation-manager.py`, `translation-cleaner.py`, and `manage-translations.sh` scripts for managing translations.
- Updated the Chinese translation file (`zh_CN.json`) to improve existing translations and remove unused keys.
- Enhanced documentation with examples and troubleshooting tips for better user experience.
This commit is contained in:
月月
2025-06-17 14:29:33 +08:00
parent b32734b9f5
commit 89e25e3504
8 changed files with 1348 additions and 661 deletions
+51 -347
View File
@@ -27,28 +27,26 @@
"Clear chat history": "清除聊天记录",
"Clear the current list of images": "清除当前图片列表",
"Close": "关闭",
"Closes cheatsheet on press": "Closes cheatsheet on press",
"Closes left sidebar on press": "Closes left sidebar on press",
"Closes media controls on press": "Closes media controls on press",
"Closes on screen keyboard on press": "Closes on screen keyboard on press",
"Closes overview": "Closes overview",
"Closes right sidebar on press": "Closes right sidebar on press",
"Closes cheatsheet on press": "按下时关闭快捷键表",
"Closes left sidebar on press": "按下时关闭左侧边栏",
"Closes media controls on press": "按下时关闭媒体控制",
"Closes on screen keyboard on press": "按下时关闭屏幕键盘",
"Closes overview": "关闭概览",
"Closes right sidebar on press": "按下时关闭右侧边栏",
"Copy": "复制",
"Copy code": "复制代码",
"Ctrl+O to expand the sidebar\nCtrl+P to detach sidebar into a window": "Ctrl+O 展开侧边栏\nCtrl+P 将侧边栏分离为窗口",
"Current API endpoint: {0}\nSet it with {1}mode PROVIDER": "当前 API 端点:{0}\n使用 {1}mode PROVIDER 设置",
"Current model: {0}\nSet it with {1}model MODEL": "当前模型:{0}\n使用 {1}model MODEL 设置",
"Decrease brightness": "Decrease brightness",
"Decrease brightness": "降低亮度",
"Delete": "删除",
"Desktop": "桌面",
"Detach left sidebar into a window/Attach it back": "Detach left sidebar into a window/Attach it back",
"Detach left sidebar into a window/Attach it back": "将左侧边栏分离为窗口/重新附加",
"Disable NSFW content": "禁用 NSFW 内容",
"Done": "完成",
"Download": "下载",
"Download complete": "下载完成",
"Edit": "编辑",
"Enter text to translate...": "输入要翻译的文本...",
"Experimental | Online | Google's model\nCan do a little more but doesn't search quickly": "实验性 | 在线 | Google 模型\n功能更多但搜索速度较慢",
"Finished tasks will go here": "已完成的任务将显示在这里",
"For desktop wallpapers | Good quality": "桌面壁纸专用 | 质量好",
"For storing API keys and other sensitive information": "用于存储 API 密钥和其他敏感信息",
@@ -56,17 +54,14 @@
"Get the next page of results": "获取下一页结果",
"Go to source ({0})": "转到源 ({0})",
"Hibernate": "休眠",
"Hides brightness OSD on press": "Hides brightness OSD on press",
"Hides volume OSD on press": "Hides volume OSD on press",
"Hold to show workspace numbers, release to show icons": "Hold to show workspace numbers, release to show icons",
"Increase brightness": "Increase brightness",
"Hides brightness OSD on press": "按下时隐藏亮度显示",
"Hides volume OSD on press": "按下时隐藏音量显示",
"Hold to show workspace numbers, release to show icons": "按住显示工作区编号,松开显示图标",
"Increase brightness": "提高亮度",
"Input": "输入",
"Intelligence": "智能",
"Interface": "界面",
"Interrupts possibility of overview being toggled on release. ": "Interrupts possibility of overview being toggled on release. ",
"Invalid API provider. Supported: \n- ": "无效的 API 提供商。支持的:\n- ",
"Invalid arguments. Must provide `key` and `value`.": "参数无效。必须提供 `key` 和 `value`。",
"Invalid model. Supported: \n```\n": "无效模型。支持的:\n```\n",
"Jump to current month": "跳转到当前月份",
"Keep system awake": "保持系统唤醒",
"Large images | God tier quality, no NSFW.": "大尺寸图片 | 顶级质量,无 NSFW",
@@ -86,24 +81,21 @@
"Nothing here!": "这里什么都没有!",
"Notifications": "通知",
"OK": "确定",
"Online via {0} | {1}'s model": "通过 {0} 在线 | {1} 模型",
"Online | Google's model\nGives up-to-date information with search.": "在线 | Google 模型\n通过搜索提供最新信息。",
"Open file link": "打开文件链接",
"Opens cheatsheet on press": "Opens cheatsheet on press",
"Opens left sidebar on press": "Opens left sidebar on press",
"Opens media controls on press": "Opens media controls on press",
"Opens on screen keyboard on press": "Opens on screen keyboard on press",
"Opens right sidebar on press": "Opens right sidebar on press",
"Opens session screen on press": "Opens session screen on press",
"Opens cheatsheet on press": "按下时打开快捷键表",
"Opens left sidebar on press": "按下时打开左侧边栏",
"Opens media controls on press": "按下时打开媒体控制",
"Opens on screen keyboard on press": "按下时打开屏幕键盘",
"Opens right sidebar on press": "按下时打开右侧边栏",
"Opens session screen on press": "按下时打开会话屏幕",
"Output": "输出",
"Page {0}": "第 {0} 页",
"Plasma Settings": "Plasma 设置",
"Provider set to ": "提供商设置为",
"Reboot": "重启",
"Reboot to firmware settings": "Reboot to firmware settings",
"Reboot to firmware settings": "重启到固件设置",
"Reload Hyprland & Quickshell": "重新加载 Hyprland 和 Quickshell",
"Run": "运行",
"Run command": "Run command",
"Run command": "运行命令",
"Save": "保存",
"Save to Downloads": "保存到下载文件夹",
"Scroll to change brightness": "滚动调节亮度",
@@ -122,351 +114,63 @@
"Shutdown": "关机",
"Silent": "静音",
"Sleep": "睡眠",
"Switched to search mode. Continue with the user's request.": "已切换到搜索模式。继续处理用户请求。",
"System": "系统",
"Task Manager": "任务管理器",
"Task description": "任务描述",
"Temperature must be between 0 and 2": "温度必须在 0 到 2 之间",
"Temperature set to {0}": "温度设置为 {0}",
"Temperature: {0}": "温度:{0}",
"That didn't work. Tips:\n- Check your tags and NSFW settings\n- If you don't have a tag in mind, type a page number": "没有找到结果。提示:\n- 检查您的标签和 NSFW 设置\n- 如果没有想到标签,请输入页码",
"The current API used. Endpoint: ": "当前使用的 API。端点:",
"The hentai one | Great quantity, a lot of NSFW, quality varies wildly": "成人向 | 数量巨大,大量 NSFW,质量参差不齐",
"The popular one | Best quantity, but quality can vary wildly": "最受欢迎 | 数量最多,但质量参差不齐",
"Thinking": "思考中",
"This is necessary because GlobalShortcut.onReleased in quickshell triggers whether or not you press something else while holding the key. ": "This is necessary because GlobalShortcut.onReleased in quickshell triggers whether or not you press something else while holding the key. ",
"To make sure this works consistently, use binditn = MODKEYS, catchall in an automatically triggered submap that includes everything.": "To make sure this works consistently, use binditn = MODKEYS, catchall in an automatically triggered submap that includes everything.",
"Toggle clipboard query on overview widget": "Toggle clipboard query on overview widget",
"Toggle emoji query on overview widget": "Toggle emoji query on overview widget",
"Toggles cheatsheet on press": "Toggles cheatsheet on press",
"Toggles left sidebar on press": "Toggles left sidebar on press",
"Toggles media controls on press": "Toggles media controls on press",
"Toggles on screen keyboard on press": "Toggles on screen keyboard on press",
"Toggles overview on press": "Toggles overview on press",
"Toggles overview on release": "Toggles overview on release",
"Toggles right sidebar on press": "Toggles right sidebar on press",
"Toggles session screen on press": "Toggles session screen on press",
"To make sure this works consistently, use binditn = MODKEYS, catchall in an automatically triggered submap that includes everything.": "为确保此功能正常工作,请在自动触发的子映射中使用 binditn = MODKEYS, catchall,该子映射包含所有内容。",
"Toggle clipboard query on overview widget": "在概览组件中切换剪贴板查询",
"Toggle emoji query on overview widget": "在概览组件中切换表情符号查询",
"Toggles cheatsheet on press": "按下时切换快捷键表",
"Toggles left sidebar on press": "按下时切换左侧边栏",
"Toggles media controls on press": "按下时切换媒体控制",
"Toggles on screen keyboard on press": "按下时切换屏幕键盘",
"Toggles overview on press": "按下时切换概览",
"Toggles overview on release": "松开时切换概览",
"Toggles right sidebar on press": "按下时切换右侧边栏",
"Toggles session screen on press": "按下时切换会话屏幕",
"Translation goes here...": "翻译结果会显示在这里...",
"Translator": "翻译器",
"Triggers brightness OSD on press": "Triggers brightness OSD on press",
"Triggers volume OSD on press": "Triggers volume OSD on press",
"Triggers brightness OSD on press": "按下时触发亮度显示",
"Triggers volume OSD on press": "按下时触发音量显示",
"Unfinished": "未完成",
"Unknown": "未知",
"Unknown Album": "未知专辑",
"Unknown Artist": "未知艺术家",
"Unknown Title": "未知标题",
"Unknown command: ": "未知命令:",
"Unknown function call: {0}": "未知函数调用:{0}",
"Uptime: {0}": "运行时间:{0}",
"Use casual tone. No user knowledge is to be assumed except basic Linux literacy. Be brief and concise: When explaining concepts, use bullet points (prefer minus sign (-) over asterisk (*)) and highlight keywords in **bold** to pinpoint the main concepts instead of long paragraphs. You are also encouraged to split your response with h2 headers, each header title beginning with an emoji, like `## 🐧 Linux`. When making changes to the user's config, you must get the config to know what values there are before setting.": "Use casual tone. No user knowledge is to be assumed except basic Linux literacy. Be brief and concise: When explaining concepts, use bullet points (prefer minus sign (-) over asterisk (*)) and highlight keywords in **bold** to pinpoint the main concepts instead of long paragraphs. You are also encouraged to split your response with h2 headers, each header title beginning with an emoji, like `## 🐧 Linux`. When making changes to the user's config, you must get the config to know what values there are before setting.",
"View Markdown source": "查看 Markdown 源码",
"Volume": "音量",
"Volume mixer": "音量混合器",
"Waifus only | Excellent quality, limited quantity": "仅限角色 | 优秀质量,数量有限",
"Waiting for response...": "等待响应...",
"Workspace": "工作区",
"\nSet with /mode PROVIDER": "\n使用 /mode PROVIDER 设置",
"about": "关于",
"accessed": "访问时间",
"account": "账户",
"active": "活动",
"active_state": "活动状态",
"addon": "附加组件",
"addons": "附加组件",
"address": "地址",
"admin": "管理员",
"align": "对齐",
"always_on_top": "总在最前",
"animate": "动画",
"app": "应用",
"appearance": "外观",
"application": "应用程序",
"applications": "应用程序",
"apply": "应用",
"apps": "应用",
"auto": "自动",
"background": "背景",
"balanced": "平衡",
"bar": "栏",
"bars": "栏",
"battery": "电池",
"bluetooth": "蓝牙",
"blur": "模糊",
"border": "边框",
"bottom": "底部",
"brightness": "亮度",
"bring_to_front": "置于顶层",
"bytes": "{0} 字节",
"cancel": "取消",
"center": "居中",
"characters": "{0} 个字符",
"charging": "充电中",
"clear_all": "清除全部",
"clicked": "点击",
"close": "关闭",
"collapse": "折叠",
"color": "颜色",
"command": "命令",
"connected": "已连接",
"connecting": "连接中...",
"context_menu": "右键菜单",
"copy": "复制",
"cpu": "处理器",
"created": "创建时间",
"critical": "电量危险",
"customize": "自定义",
"cut": "剪切",
"dark": "深色",
"dashboard": "仪表板",
"date": "日期",
"debug": "调试",
"default": "默认",
"degrees": "{0}°",
"delete": "删除",
"demo": "演示",
"desktop": "桌面",
"dialog": "对话框",
"disabled": "已禁用",
"discharging": "放电中",
"disconnected": "已断开",
"disk": "磁盘",
"display": "显示",
"distribute": "分布",
"dock": "停靠栏",
"documents": "文档",
"double_clicked": "双击",
"downloads": "下载",
"dragged": "拖拽",
"dropdown": "下拉菜单",
"dropped": "拖放",
"effect": "效果",
"email": "邮箱",
"enabled": "已启用",
"error": "错误",
"ethernet": "以太网",
"example": "示例",
"execute": "执行",
"exit": "退出",
"expand": "展开",
"extension": "扩展",
"extensions": "扩展",
"fan": "风扇",
"favorites": "收藏夹",
"file": "文件",
"files": "文件",
"filter": "滤镜",
"flip": "翻转",
"floating": "浮动",
"focus": "焦点",
"folder": "文件夹",
"folders": "文件夹",
"foreground": "前景",
"format": "格式",
"full": "已充满",
"fullscreen": "全屏",
"gigabytes": "{0} GB",
"gigahertz": "{0} GHz",
"glow": "发光",
"group": "群组",
"guest": "访客",
"headphones": "耳机",
"help": "帮助",
"hertz": "{0} Hz",
"hibernate": "休眠",
"hidden": "隐藏",
"hide": "隐藏",
"highlight": "高亮",
"hint": "提示",
"home": "主目录",
"hour": "小时",
"hours": "小时",
"hover": "悬停",
"inactive": "非活动",
"info": "信息",
"input": "输入",
"install": "安装",
"justify": "两端对齐",
"keybinds": "按键绑定",
"keyboard": "键盘",
"kilobytes": "{0} KB",
"kilohertz": "{0} kHz",
"landscape": "横向",
"language": "语言",
"launcher": "启动器",
"left": "左对齐",
"light": "浅色",
"loading": "加载中...",
"lock": "锁定",
"log": "日志",
"logout": "注销",
"long_pressed": "长按",
"low": "电量低",
"manual": "手册",
"margin": "边距",
"maximize": "最大化",
"megabytes": "{0} MB",
"megahertz": "{0} MHz",
"memory": "内存",
"menu": "菜单",
"menubar": "菜单栏",
"microphone": "麦克风",
"minimize": "最小化",
"minute": "分钟",
"minutes": "分钟",
"mirror": "镜像",
"modal": "模态框",
"modified": "修改时间",
"monitor": "显示器",
"mouse": "鼠标",
"move": "移动",
"music": "音乐",
"mute": "静音",
"network": "网络",
"next": "下一个",
"no": "否",
"no_notifications": "无通知",
"notifications": "通知",
"off": "关",
"ok": "确定",
"on": "开",
"opacity": "不透明度",
"open": "打开",
"orientation": "方向",
"outline": "轮廓",
"output": "输出",
"overview": "概览",
"owner": "所有者",
"package": "软件包",
"packages": "软件包",
"padding": "内边距",
"panel": "面板",
"panels": "面板",
"panned": "平移",
"password": "密码",
"paste": "粘贴",
"pause": "暂停",
"percent": "{0}%",
"performance": "性能",
"permissions": "权限",
"phone": "电话",
"pictures": "图片",
"pinched": "捏合",
"pinned": "固定",
"pixels": "{0}像素",
"placeholder": "占位符",
"play": "播放",
"plugin": "插件",
"plugins": "插件",
"popup": "弹出窗口",
"portrait": "纵向",
"power": "电源",
"power_saver": "节能",
"pressed": "按下",
"previous": "上一个",
"profile": "配置文件",
"properties": "属性",
"quiet": "安静",
"quit": "退出",
"read": "读取",
"recent": "最近",
"recording": "录制",
"refresh": "刷新",
"refresh_rate": "刷新率",
"reload": "重新加载",
"rename": "重命名",
"reset": "重置",
"resize": "调整大小",
"resolution": "分辨率",
"restart": "重启",
"restore": "还原",
"right": "右对齐",
"right_clicked": "右键点击",
"rotate": "旋转",
"rotated": "旋转",
"sample": "样本",
"save": "保存",
"scale": "缩放",
"screenshot": "截图",
"scrolled": "滚动",
"search": "搜索",
"second": "秒",
"seconds": "秒",
"selection": "选择",
"send_to_back": "置于底层",
"settings": "设置",
"shadow": "阴影",
"shortcuts": "快捷键",
"show": "显示",
"shutdown": "关机",
"sidebar": "侧边栏",
"silent": "静默",
"size": "大小",
"snapped": "贴靠",
"software": "软件",
"space": "间距",
"speaker": "扬声器",
"statusbar": "状态栏",
"sticky": "粘性",
"stop": "停止",
"style": "样式",
"success": "成功",
"suspend": "挂起",
"swiped": "滑动",
"systray": "系统托盘",
"tapped": "轻触",
"taskbar": "任务栏",
"temperature": "温度",
"terabytes": "{0} TB",
"terminal": "终端",
"test": "测试",
"theme": "主题",
"tiled": "平铺",
"time": "时间",
"tips": "提示",
"today": "今天",
"tomorrow": "明天",
"toolbar": "工具栏",
"tooltip": "工具提示",
"top": "顶部",
"touchpad": "触摸板",
"trace": "跟踪",
"transform": "变换",
"transition": "过渡",
"transparency": "透明度",
"trash": "回收站",
"tutorial": "教程",
"type": "类型",
"uninstall": "卸载",
"unlock": "解锁",
"unmute": "取消静音",
"unpinned": "取消固定",
"unsticky": "取消粘性",
"update": "更新",
"upgrade": "升级",
"user": "用户",
"username": "用户名",
"verbose": "详细",
"version": "版本",
"videos": "视频",
"visible": "可见",
"volume": "音量",
"warning": "警告",
"welcome": "欢迎",
"widget": "组件",
"widgets": "组件",
"wifi": "Wi-Fi",
"window": "窗口",
"windowed": "窗口化",
"windows": "窗口",
"workspace": "工作区",
"workspaces": "工作区",
"write": "写入",
"yes": "是",
"yesterday": "昨天",
"zoomed": "缩放",
"{0} (copied)": "{0}(已复制)",
"{0} Safe Storage": "{0} 安全存储",
"{0} does not require an API key": "{0} 不需要 API 密钥",
"{0} queries pending": "{0} 个查询等待中",
"{0} | Right-click to configure": "{0} | 右键点击进行配置"
"{0} | Right-click to configure": "{0} | 右键点击进行配置",
"Set with /mode PROVIDER": "使用 /mode PROVIDER 设置",
"Invalid API provider. Supported: \n-": "无效的 API 提供商。支持的:\n-",
"Unknown command:": "未知命令:",
"Type /key to get started with online models\nCtrl+O to expand the sidebar\nCtrl+P to detach sidebar into a window": "输入 /key 开始使用在线模型\nCtrl+O 展开侧边栏\nCtrl+P 将侧边栏分离为窗口",
"This is necessary because GlobalShortcut.onReleased in quickshell triggers whether or not you press something else while holding the key.": "这是必要的,因为在按住键时,quickshell 中的 GlobalShortcut.onReleased 会在您是否按下其他键时触发。",
"The current API used. Endpoint:": "当前使用的 API。端点:",
"Provider set to": "提供商设置为",
"Invalid model. Supported: \n```": "无效模型。支持的:\n```",
"Interrupts possibility of overview being toggled on release.": "中断松开时切换概览的可能性。",
"Switched to search mode. Continue with the user's request.": "已切换到搜索模式。继续处理用户请求。",
"Message the model... \"{0}\" for commands": "与模型对话... \"{0}\" 查看命令",
"Experimental | Online | Google's model\nCan do a little more but doesn't search quickly": "实验性 | 在线 | Google 模型\n功能更多但搜索速度较慢",
"To set an API key, pass it with the command\n\nTo view the key, pass \"get\" with the command<br/>\n\n### For {0}:\n\n**Link**: {1}\n\n{2}": "要设置 API 密钥,请将其与命令一起传递\n\n要查看密钥,请将 \"get\" 与命令一起传递<br/>\n\n### 对于 {0}\n\n**链接**{1}\n\n{2}",
"Enter tags, or \"{0}\" for commands": "输入标签,或 \"{0}\" 查看命令",
"Online via {0} | {1}'s model": "通过 {0} 在线 | {1} 的模型",
"That didn't work. Tips:\n- Check your tags and NSFW settings\n- If you don't have a tag in mind, type a page number": "没有找到结果。提示:\n- 检查您的标签和 NSFW 设置\n- 如果没有想到标签,请输入页码",
"Online | Google's model\nGives up-to-date information with search.": "在线 | Google 模型\n通过搜索提供最新信息。"
}