import type { Messages } from '../types'; export const zhCNVaultMessages: Messages = { // Notes 'notes.search.placeholder': '搜索笔记、主机、标签...', 'notes.action.newNote': '新建笔记', 'notes.action.newGroup': '新建文件夹', 'notes.action.importMarkdown': '导入 Markdown', 'notes.action.exportNote': '导出笔记', 'notes.action.exportGroup': '导出文件夹', 'notes.action.exportAll': '导出全部笔记', 'notes.import.toast.success': '已导入 {count} 条笔记', 'notes.import.toast.noNotes': '没有导入任何 Markdown 文件。', 'notes.import.toast.failed': '导入 Markdown 文件失败。', 'notes.import.toast.inProgress': '正在导入 Markdown 文件,请稍候。', 'notes.import.toast.skipped': '已跳过 {count} 个不支持的文件。', 'notes.export.toast.success': '已导出 {count} 条笔记', 'notes.export.toast.empty': '没有可导出的笔记。', 'notes.export.toast.failed': '导出笔记失败。', 'notes.codeBlock.copied': '已复制', 'notes.codeBlock.copyFailed': '复制代码块失败。', 'notes.group.prompt': '文件夹路径', 'notes.group.all': '笔记本', 'notes.group.ungrouped': '未分组', 'notes.section.notebooks': '笔记本', 'notes.section.notes': '笔记', 'notes.mode.edit': '编辑', 'notes.mode.split': '分屏', 'notes.mode.preview': '预览', 'notes.title.placeholder': '笔记标题', 'notes.editor.placeholder': '在这里写 Markdown 笔记...', 'notes.editor.unrenderableMarkdown': '这篇笔记包含富文本编辑器无法显示的 Markdown(例如未闭合的 文本),已改为显示原始 Markdown 源码,内容并没有丢失。', 'notes.editor.retryRichView': '重试富文本视图', 'notes.preview.empty': '暂无内容可预览。', 'notes.empty.title': '还没有笔记', 'notes.empty.desc': '可以记录运维手册、临时备忘、服务器交接信息。', 'notes.empty.group': '这个笔记本里还没有笔记。', 'notes.search.noResults': '没有找到笔记。', 'notes.toolbar.modeLive': '实时预览', 'notes.toolbar.modeLiveTitle': '实时预览模式 (WYSIWYG)', 'notes.toolbar.modeSource': '源码模式', 'notes.toolbar.modeSourceTitle': '源码模式 (Markdown 代码)', 'notes.toolbar.modePreview': '阅读模式', 'notes.toolbar.modePreviewTitle': '阅读模式 (只读排版)', 'notes.toolbar.undo': '撤销 (Ctrl+Z)', 'notes.toolbar.redo': '重做 (Ctrl+Y)', 'notes.toolbar.typography': '代码字体与排版设置', 'notes.toolbar.customCodeFont': '自定义代码字体', 'notes.toolbar.fontsAvailable': '共 {count} 款可用字体', 'notes.toolbar.searchFont': '搜索字体...', 'notes.toolbar.noFontsFound': '未找到匹配的等宽字体', 'notes.toolbar.defaultFont': '默认等宽字体 (Default)', 'notes.toolbar.bodyFontSize': '正文字号', 'notes.toolbar.codeFontSize': '代码字号', 'notes.toolbar.headingLevel': '标题层级', 'notes.toolbar.h1': '一级标题', 'notes.toolbar.h2': '二级标题', 'notes.toolbar.h3': '三级标题', 'notes.toolbar.h4': '四级标题', 'notes.toolbar.bold': '加粗 (Ctrl+B)', 'notes.toolbar.italic': '斜体 (Ctrl+I)', 'notes.toolbar.strikethrough': '删除线', 'notes.toolbar.underline': '下划线', 'notes.toolbar.inlineCode': '行内代码', 'notes.toolbar.bulletList': '无序列表', 'notes.toolbar.orderedList': '有序列表', 'notes.toolbar.taskList': '待办任务清单', 'notes.toolbar.quote': '引用块', 'notes.toolbar.codeBlock': '代码块', 'notes.toolbar.mathFormula': '数学公式块 (LaTeX / Math)', 'notes.toolbar.table': '插入表格', 'notes.toolbar.divider': '分割线', 'notes.toolbar.link': '插入超链接', 'notes.toolbar.image': '插入图片', 'notes.action.pin': '置顶笔记', 'notes.action.unpin': '取消置顶', 'notes.tag.remove': '移除标签', 'notes.tag.placeholder': '标签名...', 'notes.tag.add': '添加标签', 'notes.outline.title': '大纲目录', 'notes.outline.titleWithCount': '大纲目录 ({count})', 'notes.outline.empty': '暂无标题大纲', 'notes.outline.emptyHint': '在 Markdown 中使用 #、## 编写各级标题', 'notes.export.share': '导出与分享', 'notes.export.currentNote': '当前笔记', 'notes.export.exportMarkdown': '导出为 Markdown (.md)', 'notes.export.exportHtml': '导出为 HTML (.html)', 'notes.export.copyMarkdown': '复制 Markdown 源码', 'notes.export.allNotes': '全部笔记', 'notes.export.exportAllZip': '导出全部为 ZIP 压缩包', 'notes.export.toast.markdownSuccess': '已导出 Markdown 文件', 'notes.export.toast.htmlSuccess': '已导出 HTML 文件', 'notes.export.toast.zipSuccess': '已导出全部笔记备份 ZIP', // Select Host panel 'selectHost.title': '选择主机', 'selectHost.noHostsFound': '未找到主机', 'selectHost.newHost': '新建主机', 'selectHost.continue': '继续', 'selectHost.continueWithCount': '继续(已选 {count} 个)', 'selectHost.toggleGroup': '切换分组 {name} 下的全部主机', 'selectHost.toggleHost': '切换 {name}', // Quick Connect 'quickConnect.knownHost.title': '确认要连接吗?', 'quickConnect.knownHost.authenticity': '无法验证 {hostname} 的真实性。', 'quickConnect.knownHost.fingerprintLabel': '{keyType} fingerprint (SHA256):', 'quickConnect.knownHost.addQuestion': '是否将它加入 Known Hosts?', 'quickConnect.knownHost.addAndContinue': '加入并继续', 'quickConnect.addKey': '添加 key', 'quickConnect.warning.unparsedOptions': '部分 SSH 参数已被忽略: {options}', 'quickConnect.identity.label': '凭据预设', 'quickConnect.identity.placeholder': '选择已保存的身份', 'quickConnect.identity.empty': '没有可用的身份', 'quickConnect.identity.hint': '选择身份后会自动带入用户名和认证信息。', 'quickConnect.identity.selectedHint': '将以 {username} 连接。', 'quickConnect.identity.method.password': '密码', 'quickConnect.identity.method.key': 'SSH 密钥', 'quickConnect.identity.method.certificate': '证书', 'quickConnect.identity.unavailable': '此身份在当前设备上缺少可用凭据。', 'quickConnect.identity.useCustom': '改用自定义凭据', 'quickConnect.identity.connect': '使用预设连接', 'quickConnect.connectTitle': '连接到 {host}', // Protocol select dialog 'protocolSelect.chooseProtocol': '选择协议', 'protocolSelect.port': '端口:', // Host Details 'hostDetails.title.details': '主机详情', 'hostDetails.title.new': '新建主机', 'vault.panel.resizeWidth': '调整面板宽度', 'hostDetails.saveAria': '保存', 'hostDetails.section.address': '地址', 'hostDetails.hostname.placeholder': 'IP 或 主机名', 'hostDetails.section.general': '通用', 'hostDetails.os.title': '系统识别', 'hostDetails.os.desc': '默认自动识别,仅在识别错误时手动指定。网络设备模式单独设置。', 'hostDetails.os.auto': '自动识别', 'hostDetails.os.unknown': '其他 / 未知', 'hostDetails.os.selection': '识别方式', 'hostDetails.os.current': '当前系统', 'hostDetails.os.freebsd': 'FreeBSD', 'hostDetails.os.linux': 'Linux', 'hostDetails.os.windows': 'Windows', 'hostDetails.os.macos': 'macOS', 'hostDetails.section.sftp': 'SFTP 设置', 'hostDetails.sftp.fileProtocol': '文件协议', 'hostDetails.sftp.fileProtocol.desc': '自动优先 SFTP;当服务器无 SFTP 子系统时回退到 SCP 模式(如部分 NAS)。仅支持 SCP 的主机可强制 SCP。', 'hostDetails.sftp.fileProtocol.auto': '自动', 'hostDetails.sftp.fileProtocol.sftp': '仅 SFTP', 'hostDetails.sftp.fileProtocol.scp': 'SCP 模式', 'hostDetails.sftp.sudo': 'Sudo 提权模式', 'hostDetails.sftp.sudo.desc': '使用保存的密码自动获取 Root 权限', 'hostDetails.sftp.sudo.passwordWarning': 'Sudo 模式需要密码。请在上方配置密码,或确保服务器允许免密 sudo。', 'hostDetails.sftp.encoding': '文件名编码', 'hostDetails.sftp.encoding.desc': '选择用于解码和发送 SFTP 文件名的编码。', 'hostDetails.label.placeholder': '名称(例如:Production Server)', 'hostDetails.notes.label': '备注', 'hostDetails.notes.placeholder': '硬件配置、项目、客户、地域、角色...', 'hostDetails.notes.help': '支持 Markdown。请勿在此存放密码或私钥。', 'hostDetails.notes.tab.edit': '编辑', 'hostDetails.notes.tab.preview': '预览', 'hostDetails.notes.preview.empty': '暂无内容可预览。', 'hostDetails.notes.toggle.show': '显示备注编辑框', 'hostDetails.notes.toggle.hide': '隐藏备注编辑框', 'hostDetails.group.placeholder': '父级 Group', 'hostDetails.section.credentials': '凭据', 'hostDetails.section.portCredentials': '端口与凭据', 'hostDetails.section.appearance': '外观', 'hostDetails.distro.title': 'Linux 发行版', 'hostDetails.distro.desc': '可在连接后自动探测,也可以手动覆盖图标所用的发行版。', 'hostDetails.icon.title': '主机图标', 'hostDetails.icon.sectionTitle': '颜色与图标', 'hostDetails.icon.desc': '选择此主机使用的图标来源和颜色。', 'hostDetails.icon.source': '来源', 'hostDetails.icon.manualLabel': '手动指定', 'hostDetails.icon.tab.brand': '品牌', 'hostDetails.icon.tab.type': '类型', 'hostDetails.icon.mode.auto': '自动', 'hostDetails.icon.mode.custom': '自定义', 'hostDetails.icon.reset': '重置主机图标', 'hostDetails.icon.colorLabel': '图标颜色', 'hostDetails.icon.colorDefault': '默认', 'hostDetails.icon.colorAuto': '自动', 'hostDetails.icon.colorManual': '手动', 'hostDetails.icon.colorChoice': '颜色', 'hostDetails.icon.autoColorLabel': '当前颜色', 'hostDetails.icon.preview': '图标预览', 'hostDetails.icon.showLibrary': '展开图标库', 'hostDetails.icon.hideLibrary': '收起图标库', 'hostDetails.icon.autoUsesDistro': '使用 Linux 发行版图标和所选颜色显示此主机。', 'hostDetails.icon.customOverridesDistro': '内置图标会替换此主机的 Linux 发行版图标。', 'hostDetails.icon.option.server': '服务器', 'hostDetails.icon.option.terminal': '终端', 'hostDetails.icon.option.database': '数据库', 'hostDetails.icon.option.cloud': '云主机', 'hostDetails.icon.option.router': '路由器', 'hostDetails.icon.option.shield': '安全', 'hostDetails.icon.option.code': '代码', 'hostDetails.icon.option.box': '节点', 'hostDetails.icon.option.globe': '公网', 'hostDetails.icon.option.cpu': '计算', 'hostDetails.icon.option.hard-drive': '存储', 'hostDetails.icon.option.network': '网络', 'hostDetails.icon.option.wifi': '无线', 'hostDetails.icon.option.lock': '锁定', 'hostDetails.icon.option.key': '密钥', 'hostDetails.icon.option.monitor': '显示器', 'hostDetails.icon.option.container': '容器', 'hostDetails.icon.option.activity': '活动', 'hostDetails.icon.option.zap': '高速', 'hostDetails.icon.option.server-cog': '服务器设置', 'hostDetails.icon.color.blue': '蓝色', 'hostDetails.icon.color.green': '绿色', 'hostDetails.icon.color.red': '红色', 'hostDetails.icon.color.amber': '琥珀色', 'hostDetails.icon.color.purple': '紫色', 'hostDetails.icon.color.cyan': '青色', 'hostDetails.icon.color.orange': '橙色', 'hostDetails.icon.color.slate': '石板灰', 'hostDetails.icon.color.violet': '紫罗兰', 'hostDetails.icon.color.pink': '粉色', 'hostDetails.icon.color.rose': '玫瑰红', 'hostDetails.icon.color.lime': '青柠', 'hostDetails.icon.color.teal': '蓝绿色', 'hostDetails.icon.color.sky': '天蓝', 'hostDetails.icon.color.indigo': '靛蓝', 'hostDetails.icon.color.zinc': '锌灰', 'hostDetails.icon.color.custom': '自定义颜色', 'hostDetails.distro.mode': '来源', 'hostDetails.distro.mode.auto': '自动探测', 'hostDetails.distro.mode.manual': '手动覆盖', 'hostDetails.distro.detectedLabel': '当前值', 'hostDetails.distro.manualLabel': '手动指定', 'hostDetails.distro.pending': '首次连接后自动探测', 'hostDetails.distro.unknown': '未知', 'hostDetails.distro.option.linux': '通用 Linux', 'hostDetails.distro.option.ubuntu': 'Ubuntu', 'hostDetails.distro.option.debian': 'Debian', 'hostDetails.distro.option.centos': 'CentOS', 'hostDetails.distro.option.rocky': 'Rocky Linux', 'hostDetails.distro.option.fedora': 'Fedora', 'hostDetails.distro.option.arch': 'Arch Linux', 'hostDetails.distro.option.alpine': 'Alpine', 'hostDetails.distro.option.amazon': 'Amazon Linux', 'hostDetails.distro.option.opensuse': 'openSUSE / SLES', 'hostDetails.distro.option.redhat': 'Red Hat / RHEL', 'hostDetails.distro.option.almalinux': 'AlmaLinux', 'hostDetails.distro.option.alinux': '阿里云 Linux', 'hostDetails.distro.option.openeuler': 'openEuler', 'hostDetails.distro.option.freebsd': 'FreeBSD', 'hostDetails.distro.option.oracle': 'Oracle Linux', 'hostDetails.distro.option.kali': 'Kali Linux', 'hostDetails.distro.option.cisco': '思科', 'hostDetails.distro.option.juniper': '瞻博网络', 'hostDetails.distro.option.huawei': '华为', 'hostDetails.distro.option.h3c': '新华三 / H3C', 'hostDetails.distro.option.hpe': '慧与 / HPE', 'hostDetails.distro.option.mikrotik': 'MikroTik', 'hostDetails.distro.option.fortinet': '飞塔', 'hostDetails.distro.option.paloalto': 'Palo Alto Networks', 'hostDetails.distro.option.zyxel': '合勤', 'hostDetails.distro.option.ruijie': '锐捷', 'hostDetails.section.mosh': 'Mosh', 'hostDetails.section.et': 'EternalTerminal', 'hostDetails.et.port': 'ET 服务端口', 'hostDetails.et.port.desc': 'etserver 监听端口(默认 2022)', 'hostDetails.username.placeholder': '用户名', 'hostDetails.password.placeholder': '密码', 'hostDetails.password.show': '显示密码', 'hostDetails.password.hide': '隐藏密码', 'hostDetails.password.save': '保存密码', 'hostDetails.auth.method': '登录方式', 'hostDetails.auth.auto': '自动选择', 'hostDetails.auth.auto.desc': '先尝试系统密钥和本地密钥,最后使用已保存的密码。', 'hostDetails.auth.passwordOnly': '仅密码', 'hostDetails.auth.password.desc': '只使用已保存的密码和交互式密码提示。', 'hostDetails.auth.key': '密钥', 'hostDetails.auth.key.desc': '使用选中的密钥;如果同时保存了密码,可在失败后尝试密码。', 'hostDetails.auth.certificate': '证书', 'hostDetails.auth.certificate.desc': '使用选中的 SSH 证书;如果同时保存了密码,可在失败后尝试密码。', 'hostDetails.auth.mfaFirst': '优先交互式认证', 'hostDetails.auth.mfaFirst.desc': '适用于必须通过 keyboard-interactive 输入密码和 MFA 的服务器。', 'hostDetails.auth.credentialRequired': '保存这种登录方式前,请先选择密钥或证书。', 'hostDetails.identity.suggestions': '身份', 'hostDetails.identity.missing': '身份不存在', 'hostDetails.credential.keyCertificate': '密钥 / 证书 / 本地密钥', 'hostDetails.credential.key': '密钥', 'hostDetails.credential.certificate': '证书', 'hostDetails.credential.localKeyFile': '本地密钥文件', 'hostDetails.credential.localKeyFilePlaceholder': '~/.ssh/id_ed25519', 'hostDetails.credential.browseKeyFile': '浏览…', 'hostDetails.credential.missing': '凭据不存在', 'hostDetails.section.systemSshAgent': '系统 SSH 密钥', 'hostDetails.systemSshAgent': '使用系统 SSH 密钥登录', 'hostDetails.systemSshAgent.desc': '使用已由 macOS、Linux、Windows、1Password 或其他兼容服务解锁的密钥', 'hostDetails.systemSshAgent.socket': '代理地址', 'hostDetails.systemSshAgent.socket.desc': '留空时使用 SSH_AUTH_SOCK', 'hostDetails.systemSshAgent.identitiesOnly': '仅使用已配置的密钥', 'hostDetails.systemSshAgent.identitiesOnly.desc': '不尝试代理中其他无关密钥', 'hostDetails.systemSshAgent.notRunning': '系统 SSH 密钥服务不可用', 'hostDetails.systemSshAgent.notRunningHint': '请启动或解锁密钥服务,或者在上方填写它的地址。', 'hostDetails.keys.search': '搜索密钥…', 'hostDetails.keys.empty': '暂无密钥', 'hostDetails.certs.search': '搜索证书…', 'hostDetails.certs.empty': '暂无证书', 'hostDetails.agentForwarding': '转发 SSH 密钥', 'hostDetails.agentForwarding.desc': '允许远程服务器使用本地 SSH 密钥(例如用于 git 操作)', 'hostDetails.agentForwarding.agentNotRunning': 'SSH Agent 不可用', 'hostDetails.agentForwarding.agentNotRunningHint': '未检测到 SSH Agent。请启用 Windows OpenSSH Authentication Agent 服务,或使用兼容的 Agent(如 Bitwarden、1Password、gpg-agent)。', 'hostDetails.section.agentForwarding': 'SSH 代理', 'hostDetails.x11Forwarding': '转发 X11 图形应用', 'hostDetails.x11Forwarding.desc': '本机运行 X 服务时,让远程图形程序显示在本地桌面。', 'hostDetails.section.x11Forwarding': 'X11 转发', 'hostDetails.section.deviceType': '设备类型', 'hostDetails.deviceType': '网络设备模式', 'hostDetails.deviceType.desc': '适用于通过 SSH 连接的网络设备(交换机、路由器、防火墙)。命令将原样发送,不进行 Shell 包装,兼容华为 VRP、Cisco IOS 等厂商 CLI。', 'hostDetails.deviceType.warning': 'AI 代理命令将直接发送,无法获取退出码。仅建议在设备不运行标准 Shell 时启用。', 'hostDetails.section.sshAlgorithms': 'SSH 算法', 'hostDetails.section.terminalBehavior': '终端行为', 'hostDetails.lineTimestamps': '显示输出时间', 'hostDetails.lineTimestamps.desc': '在终端输出行旁边显示本地时间,不改变终端文本内容。', 'hostDetails.legacyAlgorithms': '允许旧版算法', 'hostDetails.legacyAlgorithms.desc': '启用已弃用的 SSH 算法(diffie-hellman-group1、ssh-dss、3des-cbc 等)以连接老旧网络设备。', 'hostDetails.legacyAlgorithms.warning': '这些算法存在已知安全漏洞,仅建议在老旧设备不支持现代加密时启用。', 'hostDetails.skipEcdsaHostKey': '跳过 ECDSA 主机密钥', 'hostDetails.skipEcdsaHostKey.desc': '某些老款华为 / 思科交换机的 ECDSA 主机密钥签名不规范,会导致连接报 "signature verification failed"。开启后客户端不再 advertise ecdsa-sha2-*,强制使用 RSA / Ed25519。', 'hostDetails.algorithms.advanced': '高级算法配置', 'hostDetails.algorithms.advanced.desc': '针对单个 host 自定义各分类的算法清单。不勾选 = 使用默认;勾选子集后将完全替换默认列表。配置错误可能导致无法连接。', 'hostDetails.algorithms.inheritedNotice': '当前组已设置以下分类的算法 override:{categories}。本面板的"恢复默认"只会回到组的设置,而不是 NetMesh 默认列表。若要忽略组的限制,请到组的算法设置里取消。', 'hostDetails.algorithms.customized': '已自定义', 'hostDetails.algorithms.reset': '恢复默认', 'hostDetails.algorithms.category.kex': '密钥交换 (KEX)', 'hostDetails.algorithms.category.cipher': '加密算法 (Cipher)', 'hostDetails.algorithms.category.hmac': '完整性算法 (HMAC)', 'hostDetails.algorithms.category.serverHostKey': '主机密钥 (Host Key)', 'hostDetails.algorithms.category.compress': '压缩 (Compression)', 'hostDetails.section.keepalive': '会话保活', 'hostDetails.keepalive.override': '为此主机单独配置', 'hostDetails.keepalive.desc': '为该主机使用专属的保活策略,而不是跟随全局设置。适用于不响应 keepalive@openssh.com 请求的老旧路由器 / 交换机——将间隔设为 0 可对该主机彻底关闭保活。', 'hostDetails.keepalive.interval': '间隔(秒)', 'hostDetails.keepalive.countMax': '最大无响应保活次数', 'hostDetails.keepalive.disabledHint': '间隔为 0 时该主机不发送保活包,仅依赖 TCP 层超时检测断连。', 'hostDetails.section.sshTimeouts': 'SSH 连接超时', 'hostDetails.sshTimeouts.tcpConnect': 'TCP 连接超时(秒)', 'hostDetails.sshTimeouts.tcpConnect.desc': '等待与该主机建立网络连接的最长时间。', 'hostDetails.sshTimeouts.authReady': '认证超时(秒)', 'hostDetails.sshTimeouts.authReady.desc': '网络连接建立后,等待 SSH 协商和认证完成的最长时间。', 'hostDetails.backspaceBehavior': 'Backspace 行为', 'hostDetails.backspaceBehavior.default': '默认', 'hostDetails.jumpHosts': '通过主机代理', 'hostDetails.jumpHosts.hops': '{count} 跳', 'hostDetails.jumpHosts.direct': '直连', 'hostDetails.jumpHosts.configure': '配置代理主机', 'hostDetails.proxy': '通过 HTTP/SOCKS5/命令代理', 'hostDetails.proxy.none': '无', 'hostDetails.proxy.edit': '编辑代理', 'hostDetails.proxy.configure': '配置代理', 'hostDetails.envVars': '环境变量', 'hostDetails.envVars.add': '添加环境变量', 'hostDetails.startupCommand': '启动命令', 'hostDetails.startupCommand.placeholder': '连接后执行的命令(例如:cd /app && ls)', 'hostDetails.startupCommand.help': 'SSH 连接建立后将自动执行该命令。', 'hostDetails.startupCommand.runMode': '多行运行方式', 'hostDetails.startupCommand.runMode.help': '选择连接后如何发送多行启动命令。', 'hostDetails.startupCommand.runMode.lineDelay': '逐行发送', 'hostDetails.startupCommand.runMode.paste': '一次性发送', 'hostDetails.otherProtocols': '其他协议', 'hostDetails.telnetOn': 'Telnet on', 'hostDetails.port': '端口', 'hostDetails.telnet.credentials': '凭据', 'hostDetails.telnet.identity.placeholder': '手动身份', 'hostDetails.telnet.username': 'Telnet 用户名', 'hostDetails.telnet.password': 'Telnet 密码', 'hostDetails.charset.placeholder': '字符集(例如 UTF-8)', 'hostDetails.telnet.add': '添加 Telnet 协议', 'hostDetails.telnet.setDefault': '默认用 Telnet 连接', 'hostDetails.tags': '标签', 'hostDetails.group': '分组', 'hostDetails.selectGroup': '选择分组', 'hostDetails.addTag': '添加标签...', 'hostDetails.createTag': '创建标签', 'hostDetails.createGroup': '创建分组', 'hostDetails.plugin.title': '插件连接', 'hostDetails.plugin.provider.placeholder': '选择连接提供程序', 'hostDetails.plugin.provider.empty': '未安装连接提供程序', 'hostDetails.plugin.authentication.placeholder': '选择认证提供程序', 'hostDetails.plugin.authentication.none': '由提供程序管理或无需认证', 'hostDetails.plugin.credential.placeholder': '选择宿主管理的凭据', 'hostDetails.plugin.credential.none': '不使用已保存凭据', 'hostDetails.plugin.credential.password': '密码身份', 'hostDetails.plugin.credential.privateKey': '私钥', 'hostDetails.plugin.credential.unavailable': '已保存的凭据不可用', 'hostDetails.plugin.configuration.label': '提供程序配置(JSON)', 'hostDetails.plugin.configuration.invalid': '配置必须是有效的 JSON。', 'hostDetails.plugin.configuration.schemaInvalid': '配置不符合提供程序声明的结构。', 'hostDetails.plugin.unavailable': '当前配置的提供程序不可用;重新安装插件前将保留配置。', 'hostDetails.plugin.useSsh': '改用 SSH', // Host form (legacy modal) 'hostForm.title.edit': '编辑主机', 'hostForm.title.new': '新建主机', 'hostForm.desc.edit': '更新该主机的连接信息', 'hostForm.desc.new': '创建一个新的 SSH 主机条目', 'hostForm.field.label': '名称', 'hostForm.placeholder.label': 'My Production Server', 'hostForm.field.hostname': 'Hostname / IP', 'hostForm.placeholder.hostname': '192.168.1.1', 'hostForm.field.port': '端口', 'hostForm.field.username': '用户名', 'hostForm.field.osType': '操作系统类型', 'hostForm.placeholder.selectOs': '选择操作系统', 'hostForm.field.group': '分组', 'hostForm.placeholder.group': '例如:AWS、DigitalOcean', 'hostForm.field.tags': '标签', 'hostForm.placeholder.addTag': '添加标签…', 'hostForm.auth.method': '认证方式', 'hostForm.auth.password': '密码', 'hostForm.auth.sshKey': 'SSH密钥', 'hostForm.auth.selectKey': '选择 SSH密钥', 'hostForm.auth.noKeys': '暂无密钥', 'hostForm.auth.noKeysHint': '钥匙串中未找到 SSH密钥,请先创建一个。', 'hostForm.saveHost': '保存主机', // Connection logs 'logs.table.date': '日期', 'logs.table.user': '用户', 'logs.table.host': '主机', 'logs.table.saved': '收藏', 'logs.empty.title': '暂无连接日志', 'logs.empty.desc': '当你连接主机或打开本地终端后,这里会显示连接历史。', 'logs.loadMore': '加载更多 ({count} 条)', 'logs.ongoing': '进行中', 'logs.localTerminal': '本地终端', 'logs.action.save': '收藏', 'logs.action.unsave': '取消收藏', 'logs.action.delete': '删除', // Log view 'logView.customizeAppearance': '自定义外观', 'logView.appearance': '外观', 'logView.readOnly': '只读', 'logView.export': '导出', // Terminal toolbar / search / context menu / auth 'terminal.toolbar.openSftp': '打开 SFTP', 'terminal.toolbar.availableAfterConnect': '连接后可用', 'terminal.toolbar.sendYmodem': 'YMODEM 发送', 'terminal.toolbar.receiveYmodem': 'YMODEM 接收', 'terminal.toolbar.sftp': 'SFTP', 'terminal.toolbar.more': '更多操作', 'terminal.toolbar.scripts': '脚本', 'terminal.toolbar.history': '命令历史', 'terminal.toolbar.library': '库', 'terminal.toolbar.noSnippets': '暂无代码片段', 'terminal.toolbar.terminalSettings': '终端设置', 'terminal.toolbar.searchTerminal': '搜索终端', 'terminal.toolbar.search': '搜索', 'terminal.toolbar.startSessionLog': '开始会话日志', 'terminal.toolbar.stopSessionLog': '停止会话日志', 'terminal.toolbar.broadcast': '广播', 'terminal.toolbar.broadcastEnable': '启用广播模式', 'terminal.toolbar.broadcastDisable': '关闭广播模式', 'terminal.toolbar.composeBar': '撰写栏', 'terminal.composeBar.placeholder': '在此输入命令,按回车发送...', 'terminal.composeBar.send': '发送', 'terminal.composeBar.close': '关闭撰写栏', 'terminal.composeBar.broadcasting': '正在广播到所有会话', 'terminal.composeBar.resize': '拖拽调整撰写栏高度', 'terminal.composeBar.manageSnippets': '管理快捷代码片段', 'terminal.composeBar.searchSnippets': '搜索代码片段...', 'terminal.composeBar.noPinnedSnippets': '点击 + 固定常用代码片段', 'terminal.composeBar.noMatchingSnippets': '没有匹配的代码片段', 'terminal.composeBar.pinnedCount': '已固定 {count} 个', 'terminal.composeBar.unpinSnippet': '从快捷栏移除 {label}', 'terminal.composeBar.snippetClickHint': '单击插入 · Shift+单击直接发送', 'terminal.toolbar.focus': '聚焦', 'terminal.toolbar.focusMode': '聚焦模式', 'terminal.paneMagnification.magnify': '放大当前面板', 'terminal.paneMagnification.restore': '还原面板布局', 'terminal.paneMagnification.hint': '已放大', 'terminal.toolbar.detach': '移出到独立标签', 'terminal.toolbar.encoding': '终端编码', 'terminal.toolbar.encoding.utf8': 'UTF-8', 'terminal.toolbar.encoding.gb18030': 'GB18030', 'terminal.toolbar.closeSession': '关闭会话', 'terminal.toolbar.hostHighlight.title': '主机关键字高亮', 'terminal.toolbar.hostHighlight.noRules': '此主机未定义自定义高亮规则', 'terminal.toolbar.hostHighlight.addRule': '添加新规则', 'terminal.toolbar.hostHighlight.labelPlaceholder': '标签(例如:错误)', 'terminal.toolbar.hostHighlight.patternPlaceholder': '正则表达式(例如:\\bfailed\\b)', 'terminal.toolbar.hostHighlight.invalidPattern': '无效的正则表达式', 'terminal.toolbar.hostHighlight.clearAll': '清除全部', 'terminal.toolbar.hostHighlight.changeColor': '更改高亮颜色', 'terminal.toolbar.hostHighlight.selectColor': '选择新规则的颜色', 'terminal.statusbar.copyHostname.label': '复制主机地址', 'terminal.statusbar.copyHostname.tooltip': '复制主机地址({hostname})', 'terminal.statusbar.copyHostname.toast': '已复制主机地址:{hostname}', 'terminal.statusbar.copyHostname.error': '复制主机地址失败', 'terminal.statusbar.disconnect.label': '断开连接', 'terminal.statusbar.disconnect.tooltip': '断开当前会话,但保留标签页', 'terminal.statusbar.reconnect.label': '重新连接', 'terminal.statusbar.reconnect.tooltip': '重新连接当前会话', 'terminal.serverStats.cpu': 'CPU 使用率', 'terminal.serverStats.cpuCores': 'CPU 核心使用率', 'terminal.serverStats.memory': '内存使用', 'terminal.serverStats.memoryDetails': '内存详情', 'terminal.serverStats.memUsed': '已用', 'terminal.serverStats.memBuffers': '缓冲区', 'terminal.serverStats.memCached': '缓存', 'terminal.serverStats.memFree': '空闲', 'terminal.serverStats.swap': '交换空间', 'terminal.serverStats.swapUsed': '已用交换', 'terminal.serverStats.swapFree': '空闲交换', 'terminal.serverStats.swapTotal': '总计', 'terminal.serverStats.topProcesses': '内存占用前十进程', 'terminal.serverStats.disk': '磁盘使用', 'terminal.serverStats.diskDetails': '已挂载磁盘', 'terminal.serverStats.network': '网络速度', 'terminal.serverStats.latency': 'SSH 网络延迟', 'terminal.serverStats.networkDetails': '网络接口', 'terminal.serverStats.noData': '暂无数据', 'terminal.dragDrop.localTitle': '拖放以插入路径', 'terminal.dragDrop.localMessage': '文件路径将被插入到终端', 'terminal.dragDrop.remoteTitle': '拖放以上传文件', 'terminal.dragDrop.remoteZmodemMessage': '文件将通过 ZMODEM(PTY)上传', 'terminal.dragDrop.remoteSftpMessage': '文件将通过 SFTP 上传', 'terminal.dragDrop.noFiles': '没有可上传的文件', 'terminal.dragDrop.notConnected': '无法拖放文件 - 终端未连接', 'terminal.dragDrop.errorTitle': '拖放错误', 'terminal.dragDrop.errorMessage': '处理拖放文件失败', 'terminal.dragDrop.destinationUnknown': '无法确定当前终端目录。请启用目录跟踪,或先打开 SFTP 选择上传目录。', 'terminal.dragDrop.uploadCancelled': '终端连接已变化或无法继续复用,本次上传已取消。请重新连接后再次拖放文件。', 'terminal.dragDrop.needsSudoElevation': '当前目录登录用户无法写入。请在主机设置中开启 Sudo 提权,或回到用户目录后再拖放。', 'terminal.search.placeholder': '搜索…', 'terminal.search.noResults': '无结果', 'terminal.search.prevMatch': '上一个匹配 (Shift+Enter)', 'terminal.search.nextMatch': '下一个匹配 (Enter)', 'terminal.menu.copy': '复制', 'terminal.menu.paste': '粘贴', 'terminal.menu.addSelectionToAI': '添加到对话', 'terminal.menu.pasteSelection': '粘贴选中文本', 'terminal.menu.selectAll': '全选', 'terminal.menu.reconnect': '重新连接', 'terminal.menu.sendYmodem': 'YMODEM 发送', 'terminal.menu.receiveYmodem': 'YMODEM 接收', 'terminal.menu.splitHorizontal': '水平分屏', 'terminal.menu.splitVertical': '垂直分屏', 'terminal.menu.clearBuffer': '清空缓冲区', 'terminal.menu.closeTerminal': '关闭终端', 'terminal.menu.rename': '重命名', 'terminal.menu.detach': '从工作区移出', 'terminal.menu.detachSession': '移出 {name}', 'terminal.ymodem.selectFile': '选择要发送的文件', 'terminal.ymodem.allFiles': '所有文件', 'terminal.ymodem.started': '正在通过 YMODEM 发送 {fileName}', 'terminal.ymodem.complete': 'YMODEM 已发送 {fileName}', 'terminal.ymodem.failed': 'YMODEM 发送失败', 'terminal.ymodem.selectReceiveDirectory': '选择接收文件保存位置', 'terminal.ymodem.receiveStarted': '正在通过 YMODEM 接收...', 'terminal.ymodem.receiveComplete': 'YMODEM 已接收 {fileName}', 'terminal.ymodem.receiveCompleteMultiple': 'YMODEM 已接收 {count} 个文件', 'terminal.ymodem.receiveEmpty': '没有接收到 YMODEM 文件', 'terminal.ymodem.receiveFailed': 'YMODEM 接收失败', 'terminal.ymodem.unavailable': 'YMODEM 当前不可用', 'terminal.selection.addToAI': '添加到对话', 'terminal.selection.addToAIDesc': '将选中的终端输出作为附件加入 AI 草稿', 'terminal.auth.password': '密码', 'terminal.auth.sshKey': 'SSH Key', 'terminal.auth.username': '用户名', 'terminal.auth.username.placeholder': 'root', 'terminal.auth.passwordLabel': '密码', 'terminal.auth.password.placeholder': '输入密码', 'terminal.auth.passphrase': '密码短语', 'terminal.auth.passphrase.placeholder': '可选:所选私钥的密码短语', 'terminal.auth.certificate': '证书', 'terminal.auth.selectKey': '选择密钥', 'terminal.auth.retryMessage': '身份验证失败。请检查凭据后重试。', 'terminal.auth.retryLog': '身份验证失败,请重试。', 'terminal.auth.noKeysHint': '暂无密钥,请先在钥匙串中添加。', 'terminal.auth.continueSave': '继续并保存', 'terminal.auth.credentialsUnavailable': '当前设备无法解密已保存凭据,请重新输入并再次保存。', 'terminal.auth.jumpCredentialsUnavailable': '某个跳板机的已保存凭据无法在当前设备解密,请到主机设置中重新填写。', 'terminal.auth.proxyCredentialsUnavailable': '代理凭据无法在当前设备解密,请到主机设置中重新填写代理密码。', 'terminal.auth.keyUnavailableFallbackPassword': '已保存 SSH 密钥在当前设备不可用,改用密码认证。', 'terminal.connectionErrorTitle': '连接错误', 'terminal.progress.timeoutIn': '将在 {seconds}s 后超时', 'terminal.progress.waitingForUserInput': '等待用户输入', 'terminal.progress.disconnected': '已断开', 'terminal.progress.cancelling': '正在取消...', 'terminal.progress.startOver': '重新开始', 'terminal.connection.dismissDisconnectedDialog': '关闭断连提示', 'terminal.connection.chainOf': 'Chain {current} / {total}', 'terminal.connection.showLogs': '显示日志', 'terminal.connection.hideLogs': '隐藏日志', 'terminal.connection.protocol.ssh': 'SSH', 'terminal.connection.protocol.telnet': 'Telnet', 'terminal.connection.protocol.mosh': 'Mosh', 'terminal.connection.protocol.serial': '串口', 'terminal.connection.protocol.local': '本地终端', 'terminal.hostKey.unknownTitle': '确认主机指纹', 'terminal.hostKey.changedTitle': '主机指纹已变化', 'terminal.hostKey.unknownDescription': '尚未确认 {host} 的真实性。', 'terminal.hostKey.changedDescription': '{host} 的已保存指纹与当前服务器不一致。', 'terminal.hostKey.fingerprintLabel': '{keyType} 指纹为 SHA256:', 'terminal.hostKey.savedFingerprintLabel': '已保存的指纹', 'terminal.hostKey.unknownHint': '如果这个指纹属于你预期连接的服务器,可以记住它。', 'terminal.hostKey.changedHint': '只有在你确认这台主机确实变更过时才继续。', 'terminal.hostKey.addAndContinue': '记住并继续', 'terminal.hostKey.updateAndContinue': '更新并继续', 'terminal.themeModal.title': 'Terminal 外观', 'terminal.themeModal.tab.theme': '主题', 'terminal.themeModal.tab.font': '字体', 'terminal.themeModal.tab.custom': '自定义', 'terminal.themeModal.globalTheme': '全局主题', 'terminal.themeModal.globalFont': '全局字体', 'terminal.themeModal.fontSize': '字体大小', 'terminal.themeModal.fontWeight': '字体粗细', 'terminal.themeModal.livePreview': '实时预览', 'terminal.themeModal.themeType': '{type} 主题', 'terminal.hiddenTheme.title': '当前隐藏主题', 'terminal.hiddenTheme.desc': '这个主题已从手动选择列表中隐藏;当你选择其他可见主题后,它会被替换。', 'topTabs.toggleTheme.systemExitTitle': '当前正在跟随系统主题', 'topTabs.toggleTheme.systemExitMessage': '请到设置里选择固定的浅色或深色主题。', 'topTabs.toggleTheme.openSettings': '打开设置', // Custom Themes 'terminal.customTheme.section': '自定义主题', 'terminal.customTheme.yourThemes': '我的主题', 'terminal.customTheme.new': '新建主题', 'terminal.customTheme.newDesc': '克隆当前主题并自定义', 'terminal.customTheme.newTitle': '新建自定义主题', 'terminal.customTheme.editTitle': '编辑主题', 'terminal.customTheme.import': '导入 .itermcolors', 'terminal.customTheme.importDesc': '从 iTerm2 配色方案文件导入', 'terminal.customTheme.importError': '无法解析所选文件,请确保它是有效的 .itermcolors XML 文件。', 'terminal.customTheme.delete': '删除主题', 'terminal.customTheme.confirmDelete': '确认删除', 'terminal.customTheme.name': '名称', 'terminal.customTheme.namePlaceholder': '我的自定义主题', 'terminal.customTheme.type': '类型', 'terminal.customTheme.group.general': '通用', 'terminal.customTheme.group.normal': '标准色', 'terminal.customTheme.group.bright': '高亮色', 'terminal.customTheme.color.background': '背景', 'terminal.customTheme.color.foreground': '前景', 'terminal.customTheme.color.cursor': '光标', 'terminal.customTheme.color.selection': '选区', 'terminal.customTheme.color.black': '黑色', 'terminal.customTheme.color.red': '红色', 'terminal.customTheme.color.green': '绿色', 'terminal.customTheme.color.yellow': '黄色', 'terminal.customTheme.color.blue': '蓝色', 'terminal.customTheme.color.magenta': '品红', 'terminal.customTheme.color.cyan': '青色', 'terminal.customTheme.color.white': '白色', 'terminal.customTheme.color.brightBlack': '亮黑', 'terminal.customTheme.color.brightRed': '亮红', 'terminal.customTheme.color.brightGreen': '亮绿', 'terminal.customTheme.color.brightYellow': '亮黄', 'terminal.customTheme.color.brightBlue': '亮蓝', 'terminal.customTheme.color.brightMagenta': '亮品红', 'terminal.customTheme.color.brightCyan': '亮青色', 'terminal.customTheme.color.brightWhite': '亮白', 'cloudSync.gate.title': '端到端加密同步', 'cloudSync.gate.desc': '数据会在本地加密后再同步,云端不会看到明文。设置主密钥以启用安全同步。', 'cloudSync.gate.masterKey': '主密钥', 'cloudSync.gate.confirmMasterKey': '确认主密钥', 'cloudSync.gate.placeholder': '输入一个强密码', 'cloudSync.gate.confirmPlaceholder': '再次输入密码', 'cloudSync.gate.mismatch': '两次输入的密码不一致', 'cloudSync.gate.warning': '我已了解:如果忘记主密钥,数据无法恢复,且没有密码重置功能。', 'cloudSync.gate.enableVault': '启用加密 Vault', 'cloudSync.gate.enabledToast': '已启用加密 Vault', 'cloudSync.gate.setupFailed': '设置主密钥失败', 'cloudSync.passwordStrength.tooShort': '太短', 'cloudSync.passwordStrength.weak': '弱', 'cloudSync.passwordStrength.moderate': '一般', 'cloudSync.passwordStrength.strong': '强', 'cloudSync.passwordStrength.veryStrong': '非常强', 'cloudSync.provider.notConnected': '未连接', 'cloudSync.provider.sync': '同步', 'cloudSync.provider.connect': '连接', 'cloudSync.provider.connecting': '连接中...', 'cloudSync.provider.disconnect': '断开连接', 'cloudSync.provider.disconnect.confirmTitle': '断开 “{name}”?', 'cloudSync.provider.disconnect.confirmMessage': '此设备将停止与 {name} 同步。本地保险库仍保留在这台电脑上。', 'cloudSync.provider.disconnect.confirmAction': '断开连接', 'cloudSync.provider.webdav': 'WebDAV', 'cloudSync.provider.webdav.desc': '连接到自建 WebDAV 端点', 'cloudSync.provider.s3': 'S3 兼容存储', 'cloudSync.provider.s3.desc': '连接到 S3 兼容对象存储', 'cloudSync.provider.comingSoon': '即将支持', 'cloudSync.webdav.title': 'WebDAV 设置', 'cloudSync.webdav.desc': '配置 WebDAV 端点用于加密同步。', 'cloudSync.webdav.endpoint': '端点地址', 'cloudSync.webdav.authType': '认证方式', 'cloudSync.webdav.auth.basic': 'Basic', 'cloudSync.webdav.auth.digest': 'Digest', 'cloudSync.webdav.auth.token': 'Token', 'cloudSync.webdav.username': '用户名', 'cloudSync.webdav.password': '密码', 'cloudSync.webdav.token': 'Token', 'cloudSync.webdav.showSecret': '显示密钥', 'cloudSync.webdav.allowInsecure': '允许不安全的连接(忽略证书错误)', 'cloudSync.webdav.validation.endpoint': '请输入有效的 WebDAV 端点。', 'cloudSync.webdav.validation.credentials': '请输入用户名和密码。', 'cloudSync.webdav.validation.token': '请输入 Token。', 'cloudSync.s3.title': 'S3 设置', 'cloudSync.s3.desc': '连接到 S3 兼容对象存储以进行加密同步。', 'cloudSync.s3.endpoint': '端点地址', 'cloudSync.s3.region': 'Region', 'cloudSync.s3.bucket': 'Bucket', 'cloudSync.s3.accessKeyId': 'Access Key ID', 'cloudSync.s3.secretAccessKey': 'Secret Access Key', 'cloudSync.s3.sessionToken': 'Session Token(可选)', 'cloudSync.s3.prefix': 'Key 前缀(可选)', 'cloudSync.s3.forcePathStyle': '强制使用 path-style URL(适用于 MinIO/R2 等)', 'cloudSync.s3.allowInsecure': '允许不安全的连接(忽略证书错误)', 'cloudSync.s3.showSecret': '显示密钥', 'cloudSync.s3.validation.required': '端点、Region、Bucket、Access Key 与 Secret 必填。', 'cloudSync.smb.title': 'SMB 设置', 'cloudSync.smb.desc': '连接到 SMB/CIFS 文件共享以进行加密同步。', 'cloudSync.smb.share': '共享路径', 'cloudSync.smb.username': '用户名', 'cloudSync.smb.password': '密码', 'cloudSync.smb.domain': '域(可选)', 'cloudSync.smb.domainPlaceholder': '例如:WORKGROUP', 'cloudSync.smb.port': '端口(可选)', 'cloudSync.smb.showSecret': '显示密码', 'cloudSync.smb.validation.share': '共享路径必填。', 'cloudSync.smb.validation.port': '端口必须是 1 到 65535 之间的数字。', 'cloudSync.connect.smb.success': 'SMB 已连接', 'cloudSync.connect.smb.failedTitle': 'SMB 连接失败', 'cloudSync.provider.smb': 'SMB 共享', 'cloudSync.connect.webdav.success': 'WebDAV 已连接', 'cloudSync.connect.webdav.failedTitle': 'WebDAV 连接失败', 'cloudSync.connect.s3.success': 'S3 已连接', 'cloudSync.connect.s3.failedTitle': 'S3 连接失败', 'cloudSync.connect.plugin.success': '插件同步提供方已连接', 'cloudSync.connect.plugin.failedTitle': '插件同步连接失败', 'cloudSync.pluginConfig.title': '配置 {name}', 'cloudSync.pluginConfig.desc': '请输入该插件同步提供方所需的 JSON 配置。', 'cloudSync.pluginConfig.label': '提供方配置(JSON)', 'cloudSync.pluginConfig.invalidJson': '配置必须是有效的 JSON。', 'cloudSync.pluginConfig.schemaInvalid': '配置不符合提供方声明的结构。', 'cloudSync.lastSync.never': '从未', 'cloudSync.lastSync.justNow': '刚刚', 'cloudSync.lastSync.minutesAgo': '{minutes} 分钟前', 'cloudSync.changeKey': '更改 Key', 'cloudSync.providers.title': '云服务', 'cloudSync.syncAll': '同步所有已连接的服务', 'cloudSync.autoSync.title': '自动同步', 'cloudSync.autoSync.desc': '发生变更时自动同步', 'cloudSync.strategy.title': '同步策略', 'cloudSync.strategy.desc': '当本地和云端都发生变化时,选择如何处理。', 'cloudSync.strategy.smartMerge': '智能合并(推荐)', 'cloudSync.strategy.smartMergeDesc': '尽量保留两边的变化;如果无法安全判断,会再让你手动选择。', 'cloudSync.strategy.preferCloud': '云端优先', 'cloudSync.strategy.preferCloudDesc': '两边都有变化时,下载云端版本,并替换本地变化。', 'cloudSync.strategy.preferLocal': '本地优先', 'cloudSync.strategy.preferLocalDesc': '两边都有变化时,上传本地版本,并替换云端变化。', 'cloudSync.convergent.title': '可收敛多设备同步', 'cloudSync.convergent.experimental': '实验性', 'cloudSync.convergent.desc': '使用加密 CRDT 副本保留离线编辑、并发删除,以及所有已连接云服务中的变化。', 'cloudSync.convergent.active': 'CRDT v2 已启用;每次上传后都会验证云端写入。', 'cloudSync.convergent.paused': '此设备已暂停 CRDT v2;云端元数据仍会保留。', 'cloudSync.convergent.enabled': '已启用可收敛同步', 'cloudSync.convergent.preview.title': '迁移预览', 'cloudSync.convergent.preview.entities': '实体', 'cloudSync.convergent.preview.providers': '云服务', 'cloudSync.convergent.preview.conflicts': '冲突', 'cloudSync.convergent.preview.compatibility': '每个加密载荷仍保留完整 v1 快照,供旧客户端读取。', 'cloudSync.convergent.preview.confirm': '创建 CRDT 副本', 'cloudSync.convergent.preview.status.ready': '就绪', 'cloudSync.convergent.preview.status.empty': '为空', 'cloudSync.convergent.preview.status.unavailable': '不可用', 'cloudSync.convergent.preview.status.blocked': '已阻断', 'cloudSync.convergent.preview.schema': '协议版本', 'cloudSync.convergent.field.presence': '存在状态', 'cloudSync.convergent.field.position': '排序位置', 'cloudSync.convergent.conflicts.title': '字段冲突({count})', 'cloudSync.convergent.conflict.empty': '为空 / 已删除', 'cloudSync.convergent.conflict.secretSet': '秘密值已设置', 'cloudSync.convergent.conflict.current': '当前候选', 'cloudSync.convergent.conflict.choose': '选择', 'cloudSync.convergent.conflict.resolved': '冲突已解决并同步', 'cloudSync.convergent.downgrade.desc': '将所有已连接云服务中的 v2 文件替换为旧版快照。', 'cloudSync.convergent.downgrade.button': '降级', 'cloudSync.convergent.downgrade.confirm': '确定将所有已连接云服务降级为旧版同步吗?写后验证通过后会移除 CRDT 元数据。', 'cloudSync.convergent.downgrade.done': '可收敛同步已降级', 'cloudSync.status.title': '同步状态', 'cloudSync.status.localVersion': '本地版本', 'cloudSync.status.remoteVersion': '远端版本', 'cloudSync.history.title': '同步历史', 'cloudSync.history.upload': '上传', 'cloudSync.history.download': '下载', 'cloudSync.history.resolved': '已解决', 'cloudSync.history.error': '错误', 'cloudSync.localBackups.title': '本地备份历史', 'cloudSync.localBackups.desc': 'NetMesh 会在版本变化前,以及恢复主机库前,自动留下一份本地恢复点。', 'cloudSync.localBackups.retentionTitle': '备份保留数量', 'cloudSync.localBackups.retentionDesc': '设置 NetMesh 最多保留多少份本地备份。', 'cloudSync.localBackups.maxCount': '最多保留', 'cloudSync.localBackups.maxSaved': '已保存保留数量:{count}', 'cloudSync.localBackups.maxInvalid': '请输入 1 到 100 之间的数字。', 'cloudSync.localBackups.empty': '还没有本地备份。', 'cloudSync.localBackups.reason.appVersionChange': '版本变化前', 'cloudSync.localBackups.reason.beforeRestore': '恢复前', 'cloudSync.localBackups.versionChange': '{from} -> {to}', 'cloudSync.localBackups.counts': '{hosts} 台主机,{keys} 个密钥,{snippets} 个代码片段,{notes} 条笔记', 'cloudSync.localBackups.restore': '恢复', 'cloudSync.localBackups.restoreSuccess': '已恢复本地备份。', 'cloudSync.localBackups.restoreFailedTitle': '恢复失败', 'cloudSync.localBackups.restoreMissing': '找不到这份备份。', 'cloudSync.localBackups.protectiveBackupFailed': '无法创建保护性备份,已中止恢复以避免覆盖当前数据。请先解决底层问题(例如钥匙串访问)后重试。详情:{message}', 'cloudSync.localBackups.restoreConfirmTitle': '确认恢复此备份?', 'cloudSync.localBackups.restoreConfirmDesc': '当前的主机、密钥、代码片段与设置将被替换为此备份中的内容。系统会先自动创建一个保护性快照,便于撤销。', 'cloudSync.localBackups.restoreConfirmButton': '恢复', 'cloudSync.localBackups.restoreConfirmCancel': '取消', 'cloudSync.localBackups.unavailableTitle': '无法使用本地备份', 'cloudSync.localBackups.unavailableDesc': '当前平台未提供受支持的安全密钥库,NetMesh 无法安全地写入本地备份。请在支持系统钥匙串的环境中运行,或改用云同步保留恢复点。', 'cloudSync.localBackups.lockedTitle': '需要主密钥', 'cloudSync.localBackups.lockedDesc': '请先配置或解锁主密钥再恢复备份,以确保恢复后的凭据仍保持加密。', 'cloudSync.revisionHistory.viewButton': '历史版本', 'cloudSync.revisionHistory.title': '主机库版本历史', 'cloudSync.revisionHistory.description': '浏览并恢复 Gist 修订历史中的旧版主机库数据。', 'cloudSync.revisionHistory.empty': '未找到修订记录。', 'cloudSync.revisionHistory.current': '当前版本', 'cloudSync.revisionHistory.revision': '修订', 'cloudSync.revisionHistory.revisionPreview': '修订内容', 'cloudSync.revisionHistory.device': '设备', 'cloudSync.revisionHistory.hosts': '主机', 'cloudSync.revisionHistory.keys': '密钥', 'cloudSync.revisionHistory.snippets': '代码片段', 'cloudSync.revisionHistory.notes': '笔记', 'cloudSync.revisionHistory.identities': '身份', 'cloudSync.revisionHistory.restoreButton': '恢复此版本', 'cloudSync.revisionHistory.restored': '已从选中的修订恢复主机库数据。', 'cloudSync.revisionHistory.revisionNotFound': '修订未找到或不包含主机库数据。', 'cloudSync.revisionHistory.decryptFailed': '无法解密此修订。可能是使用了不同的主密钥加密的。', 'cloudSync.changeKey.title': '更改主密钥', 'cloudSync.changeKey.current': '当前主密钥', 'cloudSync.changeKey.new': '新的主密钥', 'cloudSync.changeKey.confirmNew': '确认新的主密钥', 'cloudSync.changeKey.currentPlaceholder': '输入当前主密钥', 'cloudSync.changeKey.newPlaceholder': '输入新的主密钥', 'cloudSync.changeKey.confirmPlaceholder': '再次输入新的主密钥', 'cloudSync.changeKey.fillAll': '请填写所有字段', 'cloudSync.changeKey.minLength': '新的主密钥至少 8 个字符', 'cloudSync.changeKey.notMatch': '两次输入的主密钥不一致', 'cloudSync.changeKey.incorrectCurrent': '当前主密钥不正确', 'cloudSync.changeKey.failed': '更改主密钥失败', 'cloudSync.changeKey.desc': '这将重新加密 Vault,请务必记住新的主密钥。', 'cloudSync.changeKey.showKeys': '显示主密钥', 'cloudSync.changeKey.updatedToast': '主密钥已更新', 'cloudSync.changeKey.updateButton': '更新主密钥', 'cloudSync.unlock.title': '输入主密钥', 'cloudSync.unlock.masterKey': '主密钥', 'cloudSync.unlock.desc': '仅需输入一次主密钥以启用加密同步,之后会通过系统 Keychain 安全存储。', 'cloudSync.unlock.placeholder': '输入你的主密钥', 'cloudSync.unlock.empty': '请输入主密钥', 'cloudSync.unlock.incorrect': '主密钥不正确', 'cloudSync.unlock.failed': '解锁 Vault 失败', 'cloudSync.unlock.showKey': '显示主密钥', 'cloudSync.unlock.notNow': '暂不', 'cloudSync.unlock.readyToast': 'Vault 已就绪', 'cloudSync.unlock.unlockButton': '解锁', 'cloudSync.header.vaultReady': 'Vault 已就绪', 'cloudSync.header.preparingVault': '正在准备 Vault...', 'cloudSync.header.providersConnected': '已连接 {count} 个 provider', 'cloudSync.githubFlow.title': '连接到 GitHub', 'cloudSync.githubFlow.desc': '复制下面的 code,并在 GitHub 页面输入以授权 NetMesh。', 'cloudSync.githubFlow.copyCode': '复制 code', 'cloudSync.githubFlow.copied': '已复制', 'cloudSync.githubFlow.openGitHub': '打开 GitHub', 'cloudSync.githubFlow.waiting': '等待授权...', 'cloudSync.conflict.title': '检测到版本冲突', 'cloudSync.conflict.desc': '选择保留哪个版本', 'cloudSync.conflict.local': '本地', 'cloudSync.conflict.cloud': '云端', 'cloudSync.conflict.detailsTitle': '发生变化的数据', 'cloudSync.conflict.detailsCounts': '本地 {local} · 云端 {cloud} · 冲突 {conflicts}', 'cloudSync.conflict.entity.hosts': '主机', 'cloudSync.conflict.entity.keys': '密钥', 'cloudSync.conflict.entity.identities': '身份', 'cloudSync.conflict.entity.proxyProfiles': '代理配置', 'cloudSync.conflict.entity.snippets': '片段', 'cloudSync.conflict.entity.notes': '笔记', 'cloudSync.conflict.entity.noteGroups': '笔记分组', 'cloudSync.conflict.entity.customGroups': '分组', 'cloudSync.conflict.entity.snippetPackages': '片段包', 'cloudSync.conflict.entity.portForwardingRules': '端口转发', 'cloudSync.conflict.entity.groupConfigs': '分组设置', 'cloudSync.conflict.entity.settings': '设置', 'cloudSync.conflict.keepLocal': '覆盖云端(保留本地)', 'cloudSync.conflict.useCloud': '下载云端(覆盖本地)', 'cloudSync.connect.browserContinue': '请在浏览器中完成授权', 'cloudSync.connect.browserCancelled': '已取消上一个浏览器授权流程', 'cloudSync.connect.github.success': 'GitHub 已连接', 'cloudSync.connect.github.failedTitle': 'GitHub 连接失败', 'cloudSync.connect.github.timeout': '连接 GitHub 超时,请检查网络或代理设置。', 'cloudSync.connect.github.networkError': '无法访问 GitHub,请检查网络或代理设置。', 'cloudSync.connect.google.failedTitle': 'Google 连接失败', 'cloudSync.connect.onedrive.failedTitle': 'OneDrive 连接失败', 'cloudSync.sync.success': '已同步到 {provider}', 'cloudSync.sync.failed': '同步失败', 'cloudSync.sync.failedTitle': '同步失败', 'cloudSync.sync.errorTitle': '同步错误', 'cloudSync.resolve.downloaded': '已下载云端数据', 'cloudSync.resolve.uploaded': '已上传本地数据', 'cloudSync.resolve.failedTitle': '冲突处理失败', 'cloudSync.clearLocal.title': '清空本地数据', 'cloudSync.clearLocal.desc': '重置本地版本和同步历史。下次同步将从云端下载。', 'cloudSync.clearLocal.button': '清空', 'cloudSync.clearLocal.dialog.title': '清空本地 Vault 数据?', 'cloudSync.clearLocal.dialog.desc': '这将重置本地版本为 0 并清除同步历史。下次同步时会从云端下载数据,替换本地数据。', 'cloudSync.clearLocal.dialog.cancel': '取消', 'cloudSync.clearLocal.dialog.confirm': '确认清空', 'cloudSync.clearLocal.toast.title': '本地数据已清空', 'cloudSync.clearLocal.toast.desc': '本地版本已重置为 0。同步以从云端下载数据。', // Common (additional) 'common.searchPlaceholder': '搜索...', 'common.import': '导入', 'common.generate': '生成', 'common.delete': '删除', 'common.edit': '编辑', 'sftp.context.openWithDefault': '系统默认程序打开', 'common.clear': '清除', 'common.optional': '可选', 'common.selectPlaceholder': '请选择...', 'common.error': '错误', 'common.validation': '验证', 'common.saveChanges': '保存修改', 'common.advanced': '高级', 'common.selectAHostPlaceholder': '选择主机...', // Actions 'action.duplicate': '复制', 'action.open': '打开', 'action.copy': '复制', 'action.run': '运行', 'action.start': '启动', 'action.stop': '停止', // Port Forwarding (form) 'pf.form.labelPlaceholder': '规则标签', 'pf.form.intermediateHost': '中转主机 *', 'pf.form.createRule': '创建规则', 'pf.form.openWizard': '打开向导', 'pf.form.openWizardTitle': '打开端口转发向导', 'pf.action.newForwarding': '新建转发', 'pf.action.startAll': '全部启动', 'pf.action.stopAll': '全部停止', 'pf.toast.startAll.success': '已启动 {count} 条规则', 'pf.toast.startAll.partial': '已启动 {started} 条规则({failed} 条失败)', 'pf.toast.startAll.failed': '启动失败 {count} 条规则', 'pf.toast.stopAll.success': '已停止 {count} 条隧道', 'pf.toast.stopAll.partial': '已停止 {stopped} 条隧道({failed} 条失败)', 'pf.toast.stopAll.failed': '停止失败 {count} 条隧道', 'pf.view.grid': '网格', 'pf.view.list': '列表', 'pf.rule.summary.local': '本机 {bindAddress}:{localPort} -> SSH 隧道 -> 远端 {remoteHost}:{remotePort}', 'pf.rule.summary.remote': '远端 {bindAddress}:{localPort} -> SSH 隧道 -> 本机 {remoteHost}:{remotePort}', 'pf.rule.summary.dynamic': 'SOCKS 监听于 {bindAddress}:{localPort}', 'pf.tooltip.relayHost': '中转主机', 'pf.tooltip.hostLabel': '主机', 'pf.tooltip.hostAddress': '地址', 'pf.tooltip.noHost': '未配置中转主机', 'pf.tooltip.localDesc': '本地端口转发:通过 SSH 隧道访问远程服务', 'pf.tooltip.remoteDesc': '远程端口转发:将本地服务暴露给远程主机', 'pf.tooltip.dynamicDesc': '动态 SOCKS 代理:通过 SSH 隧道转发流量', 'pf.deleteActive.title': '删除正在运行的端口转发?', 'pf.deleteActive.desc': '端口转发规则 "{label}" 当前正在运行。删除前将先关闭转发连接。', 'pf.deleteActive.confirm': '关闭并删除', 'pf.form.autoStart': '自动启动', 'pf.form.autoStartDesc': '应用启动时自动开启此规则', // SFTP (pane + conflict) 'sftp.pane.local': '本地', 'sftp.pane.remote': '远端', 'sftp.pane.selectHost': '选择主机', 'sftp.pane.selectHostToStart': '先选择一个主机', 'sftp.pane.chooseFilesystem': '选择要浏览的本地或远端文件系统', 'sftp.tabs.addTab': '新建标签页', 'sftp.tabs.closeTab': '关闭标签页', 'sftp.tabs.newTab': '新标签页', 'sftp.tabs.copyDefaultPath': '复制标签页(默认路径)', 'sftp.tabs.copyCurrentPath': '复制并跳转到当前路径', 'sftp.conflict.title': '文件冲突', 'sftp.conflict.desc': '目标位置已存在同名文件', 'sftp.conflict.folderTitle': '文件夹冲突', 'sftp.conflict.folderDesc': '请选择处理方式。', 'sftp.conflict.folderFileDesc': '目标位置已存在同名文件,文件夹无法与文件合并。', 'sftp.conflict.folderSymlinkDesc': '目标位置已存在同名符号链接,文件夹无法与符号链接合并。', 'sftp.conflict.folderUnknownDesc': '目标位置已存在同名项目,但无法确认其类型。为保护目标数据,替换操作不可用。', 'sftp.conflict.folderMergeHint': '合并:保留目标中独有的内容。', 'sftp.conflict.folderReplaceWarning': '替换:删除目标中独有的内容,且无法恢复。', 'sftp.conflict.alreadyExistsSuffix': '已存在', 'sftp.conflict.existingFile': '已有文件', 'sftp.conflict.newFile': '新文件', 'sftp.conflict.size': '大小:', 'sftp.conflict.modified': '修改时间:', 'sftp.conflict.applyToAll': '将此操作应用到剩余的 {count} 个冲突', 'sftp.conflict.action.stop': '停止', 'sftp.conflict.action.skip': '跳过', 'sftp.conflict.action.keepBoth': '保留两者', 'sftp.conflict.action.duplicate': '创建副本', 'sftp.conflict.action.merge': '合并', 'sftp.conflict.action.replace': '替换', // SFTP Upload Phases 'sftp.upload.phase.compressing': '正在压缩', 'sftp.upload.phase.uploading': '正在上传', 'sftp.upload.phase.extracting': '正在解压', 'sftp.upload.phase.compressed': '压缩传输', 'vault.import.plugins.title': '插件导入器', 'vault.import.plugins.loading': '正在生成安全导入预览…', 'vault.import.plugins.progress': '已处理 {completed}/{total} {message}', 'vault.import.plugins.preview': '导入预览', 'vault.import.plugins.empty': '导入器未返回可导入的草稿。', 'vault.import.plugins.summary': '{parsed} 个草稿 · {warnings} 个警告 · {errors} 个错误', 'vault.import.plugins.commit': '导入预览内容', 'vault.import.plugins.fileUnavailable': '桌面导入桥无法访问所选文件。', 'vault.import.plugins.notRecognized': '此导入器无法识别所选文件。', 'vault.import.plugins.containsErrors': '导入预览包含错误,无法提交。', 'vault.import.plugins.committed': '已导入 {count} 个经过验证的项目。', 'vault.import.plugins.duplicates': '将跳过 {count} 个重复项目。', 'vault.import.plugins.validationErrors': '{count} 个草稿未通过宿主校验,导入器必须先修复。', 'vault.import.plugins.kind.host': '主机', 'vault.import.plugins.kind.identity': '身份', 'vault.import.plugins.kind.key': '密钥', 'vault.import.plugins.kind.snippet': '命令片段', 'vault.import.plugins.kind.group': '分组', 'vault.import.plugins.moreItems': '本次导入还包含 {count} 个项目。', 'vault.import.plugins.moreDiagnostics': '预览中省略了另外 {count} 条诊断信息。', };