import type { Messages } from '../types'; export const zhCNTerminalMessages: Messages = { 'terminal.sudoHint.pressEnter': '按 Enter 粘贴已保存的密码', 'terminal.passwordPicker.title': '已保存的密码', 'terminal.passwordPicker.empty': '没有已保存的密码', // Network Device Mode auto-detection tip (session header) 'terminal.networkDevice.tip.message': '此主机疑似为网络设备。启用网络设备模式后,命令将原样发送(不做 Shell 包装)。', 'terminal.networkDevice.tip.action': '启用', 'terminal.networkDevice.tip.dismiss': '忽略', 'terminal.networkDevice.tip.enabled': '已为 {host} 启用网络设备模式', 'terminal.menu.rename': '重命名', 'terminal.menu.uploadClipboardImage': '上传剪贴板图片', 'terminal.clipboardImageUpload.noImage': '剪贴板中没有图片', 'terminal.clipboardImageUpload.failed': '无法上传剪贴板图片', 'terminal.toolbar.configureOsc7': '配置目录追踪', 'terminal.toolbar.detach': '移出到独立标签', 'terminal.toolbar.dragPane': '拖动终端窗格', 'terminal.toolbar.showActions': '显示终端操作', 'terminal.menu.detach': '从工作区移出', 'terminal.osc7Setup.title': '配置目录追踪', 'terminal.osc7Setup.desc': 'NetMesh 会为当前远端用户添加 OSC 7 提示符配置。这样在 sudo 或 su 之后,SFTP 也能继续跟随终端目录。', 'terminal.osc7Setup.targets': '可能写入的文件', 'terminal.osc7Setup.command': '将执行的命令', 'terminal.osc7Setup.run': '执行配置', 'terminal.osc7Setup.running': '正在配置...', 'terminal.osc7Setup.configured': '目录追踪已配置', 'terminal.osc7Setup.failed': '目录追踪配置失败', 'terminal.osc7Setup.sent': '目录追踪配置已发送到终端', 'terminal.toolbar.timestampsEnable': '显示时间戳', 'terminal.toolbar.timestampsDisable': '隐藏时间戳', 'terminal.progress.enterReconnectHint': '按 Enter 重新连接', 'terminal.progress.reconnecting': '正在重新连接...', 'terminal.progress.autoReconnectScheduled': '连接已断开,将在 {seconds} 秒后自动重连(第 {attempt} 次)。', 'terminal.progress.autoReconnectAttempt': '正在自动重连(第 {attempt} 次)...', 'terminal.connection.protocol.et': 'EternalTerminal', 'terminal.connection.protocol.plugin': '插件连接', 'terminal.et.proxyUnsupported': 'EternalTerminal 目前不支持 NetMesh 的代理设置。请改用 SSH,或移除该主机的代理。', 'terminal.et.multiJumpUnsupported': 'EternalTerminal 目前在 NetMesh 中最多支持一个跳板机。', // Command history side panel 'history.scope.label': '历史范围', 'history.tab.host': '主机', 'history.tab.global': '全局', 'history.searchPlaceholder': '搜索历史命令...', 'history.loading': '正在读取远程历史...', 'history.meta.count': '{count} 条', 'history.empty.noSession': '请先打开一个远程会话以查看其命令历史。', 'history.empty.unsupportedProtocol': '仅 SSH/Mosh/ET 会话支持命令历史。', 'history.empty.noHistory': '该主机上未找到命令历史。', 'history.empty.noGlobalHistory': '暂无全局命令历史。你执行的命令会记录在这里。', 'history.action.refresh': '刷新', 'history.action.retry': '重试', 'history.action.paste': '粘贴到终端', 'history.action.run': '在终端执行', 'history.action.saveAsSnippet': '保存为代码片段', 'history.action.delete': '从历史记录中删除', // SFTP File Opener 'sftp.context.copyPath': '复制文件路径', 'sftp.context.openWith': '打开方式...', 'sftp.context.edit': '编辑', 'sftp.context.preview': '预览', 'sftp.opener.title': '打开方式', 'sftp.opener.desc': '选择一个应用程序来打开此文件', 'sftp.opener.builtInEditor': '内置编辑器', 'sftp.opener.editDescription': '编辑文本文件', 'sftp.opener.builtInImageViewer': '内置图片预览', 'sftp.opener.previewDescription': '预览图片', 'sftp.opener.systemApp': '选择应用程序...', 'sftp.opener.systemAppDescription': '从本地选择一个应用程序', 'sftp.opener.onlySystemApp': '此文件只能用外部应用程序打开', 'sftp.opener.noAppsAvailable': '无可用应用程序', 'sftp.opener.noExtension': '无扩展名文件', 'sftp.opener.setDefault': '始终使用此方式打开 {ext} 文件', 'sftp.opener.confirmTitle': '设为默认?', 'sftp.opener.confirmDescription': '是否始终使用 {app} 打开 {ext} 文件?', 'sftp.opener.yesRemember': '是,记住此选择', 'sftp.opener.justOnce': '仅此一次', 'sftp.opener.confirm.title': '设置默认应用程序', 'sftp.opener.confirm.desc': '是否始终使用此应用程序打开 .{ext} 文件?', 'sftp.editor.title': '文本编辑器', 'sftp.editor.save': '保存到远程', 'sftp.editor.saving': '保存中...', 'sftp.editor.saved': '保存成功', 'sftp.editor.saveFailed': '保存文件失败', 'sftp.editor.unsavedChanges': '您有未保存的更改。确定要关闭吗?', 'sftp.editor.syntaxHighlight': '语法高亮', 'sftp.preview.title': '图片预览', 'sftp.preview.zoomIn': '放大', 'sftp.preview.zoomOut': '缩小', 'sftp.preview.resetZoom': '重置缩放', 'sftp.preview.fitToWindow': '适应窗口', // Settings > SFTP File Associations 'settings.tab.sftpFileAssociations': 'SFTP', 'settings.sftp.transferConcurrency': '传输并发数', 'settings.sftp.transferConcurrency.desc': '同一目标同时传输的文件数量上限,包括文件夹内文件和单独多选的文件。较高的值可能提高速度,但可能导致某些服务器过载。', 'settings.sftp.transferPoolIdleTtl': '传输连接保活时间', 'settings.sftp.transferPoolIdleTtl.desc': '专用传输 SFTP 连接空闲多久后关闭。时间更长可减少下次上传/下载的冷启动等待;进行中的传输不会被关闭。', 'settings.sftp.transferPoolIdleTtl.1m': '1 分钟', 'settings.sftp.transferPoolIdleTtl.5m': '5 分钟', 'settings.sftp.transferPoolIdleTtl.15m': '15 分钟', 'settings.sftp.transferPoolIdleTtl.30m': '30 分钟', 'settings.sftp.transferPoolIdleTtl.never': '直到退出应用', 'settings.ssh.transportIdleTtl': 'SSH 连接保活时间', 'settings.ssh.transportIdleTtl.desc': '最后一个终端、SFTP 浏览、批量传输或端口转发释放后,共享 SSH 连接再保留多久。保留期间再次打开同主机可跳过重新认证(含 MFA);进行中的会话与传输不会被关闭。', 'settings.ssh.transportIdleTtl.1m': '1 分钟', 'settings.ssh.transportIdleTtl.5m': '5 分钟', 'settings.ssh.transportIdleTtl.15m': '15 分钟', 'settings.ssh.transportIdleTtl.30m': '30 分钟', 'settings.ssh.transportIdleTtl.never': '直到退出应用', 'settings.sftp.defaultOpener': '默认文件打开方式', 'settings.sftp.defaultOpener.desc': '选择没有特定文件关联时的默认打开方式', 'settings.sftp.defaultOpener.ask': '每次询问', 'settings.sftp.defaultOpener.askDesc': '每次打开文件时弹出选择对话框', 'settings.sftp.defaultOpener.builtInDesc': '默认使用内置编辑器打开文本文件', 'settings.sftp.defaultOpener.systemApp': '选择应用程序...', 'settings.sftp.defaultOpener.systemAppDesc': '默认使用指定的外部应用程序打开文件', 'settings.sftpFileAssociations.title': 'SFTP 文件关联', 'settings.sftpFileAssociations.desc': '配置按扩展名打开文件的默认应用程序', 'settings.sftpFileAssociations.extension': '扩展名', 'settings.sftpFileAssociations.application': '应用程序', 'settings.sftpFileAssociations.noAssociations': '未配置文件关联', 'settings.sftpFileAssociations.remove': '移除', 'settings.sftpFileAssociations.removeConfirm': '确定移除 .{ext} 的关联吗?', // Settings > SFTP Behavior 'settings.sftp.doubleClickBehavior': '双击行为', 'settings.sftp.doubleClickBehavior.desc': '选择在 SFTP 视图中双击文件时的操作', 'settings.sftp.doubleClickBehavior.open': '打开文件', 'settings.sftp.doubleClickBehavior.transfer': '传输到另一侧', 'settings.sftp.doubleClickBehavior.openDesc': '使用默认应用程序打开文件', 'settings.sftp.doubleClickBehavior.transferDesc': '将文件传输到另一窗格的活动主机', 'settings.sshDeepLink.title': 'SSH 和 Telnet 链接', 'settings.sshDeepLink.enable': '用 NetMesh 打开 ssh:// 和 telnet:// 链接', 'settings.sshDeepLink.enableDesc': '允许 NetMesh 接管来自浏览器和其他应用的 ssh://、telnet:// 链接,以及堡垒机常用的 PuTTY 启动参数(例如 -ssh user@host -P 22 -pw password)。', 'settings.explorerContextMenu.title': 'Windows 资源管理器', 'settings.explorerContextMenu.enable': '在文件夹右键菜单中显示 “Open in NetMesh”', 'settings.explorerContextMenu.enableDesc': '为文件夹和文件夹空白处添加右键项,可直接在该目录打开本地终端。开关立即生效,无需重装。', 'settings.jmsDeepLink.title': 'JumpServer 链接', 'settings.jmsDeepLink.enable': '处理 jms:// 链接', 'settings.jmsDeepLink.enableDesc': '将 NetMesh 注册为 JumpServer jms:// 客户端链接的处理程序,可能与官方 JumpServer 客户端冲突。', // Settings > SFTP Auto Sync 'settings.sftp.autoSync': '自动同步到远程', 'settings.sftp.autoSync.desc': '使用外部应用程序打开文件时,自动将文件更改同步回远程服务器', 'settings.sftp.autoSync.enable': '启用自动同步', 'settings.sftp.autoSync.enableDesc': '在外部应用程序中保存文件时,更改将自动上传到远程服务器', // Settings > SFTP 自动打开侧栏 'settings.sftp.autoOpenSidebar': '连接时自动打开侧栏', 'settings.sftp.autoOpenSidebar.desc': '连接到主机时自动打开 SFTP 文件浏览器侧栏', 'settings.sftp.autoOpenSidebar.enable': '启用自动打开侧栏', 'settings.sftp.autoOpenSidebar.enableDesc': '当终端会话连接到远程主机时,SFTP 侧栏将自动打开', 'settings.sftp.followTerminalCwd': '追随终端目录', 'settings.sftp.followTerminalCwd.desc': '在侧栏 SFTP 中自动跟随终端当前工作目录变化(可在工具栏切换)', 'settings.sftp.followTerminalCwd.enable': '默认开启追随终端目录', 'settings.sftp.followTerminalCwd.enableDesc': '打开侧栏 SFTP 时默认启用追随模式,终端执行 cd 后文件浏览器会自动跳转', 'settings.sftp.defaultViewMode': '默认视图模式', 'settings.sftp.defaultViewMode.desc': '选择打开新 SFTP 标签页时的默认视图模式。每个主机的偏好设置会覆盖此全局设置。', 'settings.sftp.defaultViewMode.list': '列表视图', 'settings.sftp.defaultViewMode.listDesc': '以平面列表显示当前目录的文件', 'settings.sftp.defaultViewMode.tree': '树形视图', 'settings.sftp.defaultViewMode.treeDesc': '以层级树形结构显示文件', 'sftp.autoSync.success': '文件已同步到远程:{fileName}', 'sftp.autoSync.error': '同步文件失败:{error}', // SFTP Folder Upload Progress 'sftp.upload.progress': '正在上传 {current}/{total} 个文件...', 'sftp.upload.uploading': '正在上传...', 'sftp.upload.compressing': '正在压缩...', 'sftp.upload.extracting': '正在解压...', 'sftp.upload.scanning': '正在扫描文件...', 'sftp.upload.completed': '已完成', 'sftp.upload.compressed': '压缩传输', 'sftp.upload.currentFile': '当前: {fileName}', 'sftp.upload.cancelled': '上传已取消', 'sftp.upload.noFiles': '没有可上传的文件', 'sftp.upload.partialSuccess': '已上传 {success} 个文件,{failed} 个失败', 'sftp.upload.cancel': '取消', 'sftp.upload.completedToPath': '已上传至 {path}', // SFTP Download 'sftp.download.completed': '已下载', 'sftp.download.cancelled': '下载已取消', // SFTP Reconnecting 'sftp.reconnecting.title': '正在重连...', 'sftp.reconnecting.desc': '连接已断开,正在尝试重新连接', 'sftp.reconnected': '连接已恢复', 'sftp.error.reconnectFailed': '重连失败,请重试。', 'sftp.error.connectionLostManual': '连接已断开,请手动重新连接。', 'sftp.error.connectionLostReconnecting': '连接已断开,正在重连...', 'sftp.error.sessionLost': 'SFTP 会话已断开,请重新连接。', // Settings > SFTP Show Hidden Files 'settings.sftp.showHiddenFiles': '显示隐藏文件', 'settings.sftp.showHiddenFiles.desc': '在 SFTP 文件浏览器中显示隐藏文件(Unix/macOS 点文件和 Windows 隐藏属性文件)。', 'settings.sftp.showHiddenFiles.enable': '显示隐藏文件', 'settings.sftp.showHiddenFiles.enableDesc': '浏览本地和远程文件系统时显示隐藏文件', // Settings > SFTP Compressed Upload 'settings.sftp.compressedUpload': '文件夹压缩传输', 'settings.sftp.compressedUpload.desc': '上传前压缩文件夹,可大幅减少传输时间。', 'settings.sftp.compressedUpload.enable': '启用文件夹压缩', 'settings.sftp.compressedUpload.enableDesc': '自动使用 tar 压缩文件夹后再传输。需要服务器支持 tar 命令,不支持时自动回退到普通传输。', 'settings.sftp.skipUnchanged.enable': '跳过未改文件', 'settings.sftp.skipUnchanged.enableDesc': '当目标文件的大小与修改时间已与源一致时跳过传输(类似 rsync)。替换到暂存路径时自动禁用。', // Settings > Terminal 'settings.terminal.section.theme': '终端主题', 'settings.terminal.themeModal.title': '选择主题', 'settings.terminal.themeModal.darkThemes': '深色主题', 'settings.terminal.themeModal.lightThemes': '浅色主题', 'settings.terminal.theme.selectButton': '选择主题', 'settings.terminal.theme.followApp': '跟随应用主题', 'settings.terminal.theme.followApp.desc': '终端背景色自动匹配当前应用主题,保持视觉一致性。', 'settings.terminal.theme.darkTheme': '深色模式终端主题', 'settings.terminal.theme.lightTheme': '浅色模式终端主题', 'settings.terminal.theme.auto': '自动(跟随界面主题)', 'settings.terminal.theme.autoDesc': '跟随当前界面主题预设', 'settings.terminal.section.font': '字体', 'settings.terminal.section.cursor': '光标', 'settings.terminal.section.keyboard': '键盘', 'settings.terminal.section.accessibility': '无障碍', 'settings.terminal.section.behavior': '行为', 'settings.terminal.section.scrollback': '回滚', 'settings.terminal.section.keywordHighlight': '关键字高亮', 'settings.terminal.font.family': '字体', 'settings.terminal.font.family.desc': '终端字体', 'settings.terminal.font.cjk': '中文 / CJK 字体', 'settings.terminal.font.cjk.desc': '用于渲染中 / 日 / 韩字符的字体;"Auto" 会按主字体智能搭配', 'settings.terminal.font.cjk.option.auto': 'Auto · 按主字体智能搭配', 'settings.terminal.font.cjk.option.sarasaSC': 'Sarasa Mono SC (更纱黑体 简)', 'settings.terminal.font.cjk.option.sarasaTC': 'Sarasa Mono TC (更纱黑体 繁)', 'settings.terminal.font.cjk.option.mapleCN': 'Maple Mono CN', 'settings.terminal.font.cjk.option.sourceHan': 'Source Han Mono SC (思源等宽)', 'settings.terminal.font.cjk.option.notoCJK': 'Noto Sans Mono CJK SC', 'settings.terminal.font.cjk.option.lxgwWenkai': 'LXGW WenKai Mono (霞鹜文楷等宽)', 'settings.terminal.font.cjk.option.simSun': 'SimSun (宋体)', 'settings.terminal.font.cjk.option.legacy': '{font} · 不推荐(非等宽字体)', 'settings.terminal.font.cjk.option.recommended': '推荐用于终端对齐', 'settings.terminal.font.cjk.option.installed': '本机已安装字体', 'settings.terminal.font.cjk.option.unverified': '暂时无法检查是否安装', 'settings.terminal.font.cjk.option.unavailable': '本机未安装', 'settings.terminal.font.cjk.searchPlaceholder': '搜索本机字体…', 'settings.terminal.font.cjk.empty': '没有匹配的本机字体', 'settings.terminal.font.cjk.useCustom': '使用字体', 'settings.terminal.font.cjk.refresh': '刷新本机字体', 'settings.terminal.font.cjk.alignmentWarning': '这个字体尚未确认是等宽字体,请通过预览检查文字是否对齐。', 'settings.terminal.font.cjk.unavailableWarning': '本机没有安装这个字体。NetMesh 会保留设置,并使用安全字体继续显示。', 'settings.terminal.font.size': '字体大小', 'settings.terminal.font.size.desc': '终端文字大小', 'settings.terminal.font.weight': '字重', 'settings.terminal.font.weight.desc': '常规文本字重 (100-900)', 'settings.terminal.font.weight.thin': '极细', 'settings.terminal.font.weight.extraLight': '特细', 'settings.terminal.font.weight.light': '细', 'settings.terminal.font.weight.normal': '常规', 'settings.terminal.font.weight.medium': '中等', 'settings.terminal.font.weight.semiBold': '半粗', 'settings.terminal.font.weight.bold': '粗', 'settings.terminal.font.weight.extraBold': '特粗', 'settings.terminal.font.weight.black': '黑体', 'settings.terminal.font.weightBold': '粗体字重', 'settings.terminal.font.weightBold.desc': '粗体文本字重 (100-900)', 'settings.terminal.font.smoothing': '字体平滑', 'settings.terminal.font.smoothing.desc': '使用 macOS 原生字体抗锯齿', 'settings.terminal.font.linePadding': '行间距', 'settings.terminal.font.linePadding.desc': '行之间的额外间距 (0-10)', 'settings.terminal.font.emulationType': '终端仿真类型', 'settings.terminal.cursor.style': '光标样式', 'settings.terminal.cursor.style.block': '块', 'settings.terminal.cursor.style.bar': '竖线', 'settings.terminal.cursor.style.underline': '下划线', 'settings.terminal.cursor.blink': '光标闪烁', 'settings.terminal.cursor.highlightLine': '高亮当前行', 'settings.terminal.cursor.highlightLine.desc': '为光标所在行加上淡色背景,方便定位当前输入位置', 'settings.terminal.keyboard.altAsMeta': '将 Option 作为 Meta 键', 'settings.terminal.keyboard.altAsMeta.desc': '使用 Option (Alt) 作为 Meta 键,而不是用于输入特殊字符', 'settings.terminal.keyboard.optionArrowWordJump': 'Option+←/→ 按单词跳转', 'settings.terminal.keyboard.optionArrowWordJump.desc': '按 Option+左/右 时发送 Meta-b / Meta-f,让 Shell 按单词移动光标(而非默认的 ^[[1;3D / ^[[1;3C)', 'settings.terminal.keyboard.kittyProtocol': 'Kitty 键盘协议', 'settings.terminal.keyboard.kittyProtocol.desc': '启用 Kitty 键盘协议支持。', 'settings.terminal.accessibility.minimumContrastRatio': '最小对比度', 'settings.terminal.accessibility.minimumContrastRatio.desc': '调整颜色以满足对比度要求 (1 = 禁用, 21 = 最大)', 'settings.terminal.behavior.rightClick': '右键行为', 'settings.terminal.behavior.rightClick.desc': '在终端中右键时执行的操作', 'settings.terminal.behavior.rightClick.fullscreenMenu': '在全屏应用中也显示菜单', 'settings.terminal.behavior.rightClick.fullscreenMenu.desc': '即使 tmux、vim 等全屏应用接管了鼠标,也显示右键菜单。关闭时右键会交给应用处理(Shift+右键仍可打开菜单)。', 'settings.terminal.behavior.autoCloseOnExit': '退出后自动关闭终端', 'settings.terminal.behavior.autoCloseOnExit.desc': '允许终端标签页和窗口在会话退出后自动关闭。关闭此项后,无论退出结果如何都会保留。', 'settings.terminal.behavior.disconnectedNotice': '连接断开时', 'settings.terminal.behavior.disconnectedNotice.desc': '已连接的会话断开后,可在终端内显示简短提示,或继续使用完整弹窗。首次连接失败仍使用弹窗。', 'settings.terminal.behavior.disconnectedNotice.terminal': '终端内提示', 'settings.terminal.behavior.disconnectedNotice.dialog': '弹窗提示', 'settings.terminal.behavior.rightClick.menu': '显示菜单', 'settings.terminal.behavior.rightClick.paste': '粘贴', 'settings.terminal.behavior.rightClick.selectWord': '选择单词', 'settings.terminal.behavior.copyOnSelect': '选择即复制', 'settings.terminal.behavior.copyOnSelect.desc': '自动复制选中的文本。在 tmux/vim 鼠标模式下,macOS 按住 Option,Windows/Linux 按住 Shift 拖选即可选中文本', 'settings.terminal.behavior.normalizeTextOnCopy': '复制时规范化终端文本', 'settings.terminal.behavior.normalizeTextOnCopy.desc': '复制终端内容时去掉仅用于显示的行尾填充空格,并拼接软换行,使粘贴结果更接近逻辑文本。关闭后按屏幕选区原样复制(含 TUI 填充空格与视觉折行)。', 'settings.terminal.behavior.middleClickPaste': '中键粘贴', 'settings.terminal.behavior.middleClickPaste.desc': '中键点击时粘贴剪贴板内容', 'settings.terminal.behavior.middleClick': '中键行为', 'settings.terminal.behavior.middleClick.desc': '在终端中点击鼠标中键时执行的操作', 'settings.terminal.behavior.middleClick.menu': '显示菜单', 'settings.terminal.behavior.middleClick.paste': '粘贴', 'settings.terminal.behavior.middleClick.disabled': '无动作', 'settings.terminal.behavior.wordSeparators': '单词分隔符', 'settings.terminal.behavior.wordSeparators.desc': '双击选择文本时作为边界的字符。空格也算;可添加 =、逗号或 :,方便选择 uid=name 里的部分内容。', 'settings.terminal.behavior.bracketedPaste': '括号粘贴模式', 'settings.terminal.behavior.bracketedPaste.desc': '粘贴文本时使用转义序列包裹,以便终端区分粘贴和键入。如果出现 ^[[200~ 字样请关闭此选项。', 'settings.terminal.behavior.autoUploadClipboardImage': '粘贴时自动上传剪贴板图片', 'settings.terminal.behavior.autoUploadClipboardImage.desc': '当剪贴板包含图片时,在远程会话中粘贴会通过 SFTP 将图片上传到远端当前目录的 .NetMesh-paste-images/ 文件夹,并在终端输入远端路径,而不是粘贴文本。', 'settings.terminal.behavior.shiftEnterNewline': 'Shift+Enter 发送文本', 'settings.terminal.behavior.shiftEnterNewline.desc': '在终端中按 Shift+Enter 时发送配置的文本,而不是普通回车。', 'settings.terminal.behavior.shiftEnterNewlineText': '发送内容', 'settings.terminal.behavior.shiftEnterNewlineText.desc': '使用 \\n 表示换行,\\t 表示 Tab,\\\\ 表示反斜杠。', 'settings.terminal.behavior.clearWipesScrollback': '`clear` 同时清空回滚历史', 'settings.terminal.behavior.clearWipesScrollback.desc': '`clear` 命令同时清空回滚历史(POSIX 默认行为)。关闭则保留历史。', 'settings.terminal.behavior.preserveSelectionOnInput': '输入时保留选区', 'settings.terminal.behavior.preserveSelectionOnInput.desc': '键盘输入时不清除鼠标选中的文本,方便选中路径后输入 `sz ` 之类命令再粘贴。', 'settings.terminal.behavior.forcePromptNewLine': '提示符另起一行', 'settings.terminal.behavior.forcePromptNewLine.desc': '当命令输出的最后一行未以换行符结束时,将识别到的 shell 提示符移动到下一行显示。', 'settings.terminal.behavior.dynamicTabTitle': '动态标签页标题', 'settings.terminal.behavior.dynamicTabTitle.desc': '选择标签页什么时候跟随 Shell 报告的窗口标题,并更新编程 CLI 图标。关闭时也会停止实时图标识别。', 'settings.terminal.behavior.dynamicTabTitle.off': '关闭', 'settings.terminal.behavior.dynamicTabTitle.agent': '仅 Agent', 'settings.terminal.behavior.dynamicTabTitle.all': '全部会话', 'settings.terminal.behavior.oscNotifications': 'OSC 桌面通知', 'settings.terminal.behavior.oscNotifications.desc': '当程序发出 OSC 9、OSC 777 notify 或 kitty OSC 99 时弹出系统通知。Codex 等 Agent 用它提示回合完成或等待审批。', 'settings.terminal.behavior.oscNotifications.off': '关闭', 'settings.terminal.behavior.oscNotifications.unfocused': '未聚焦时', 'settings.terminal.behavior.oscNotifications.always': '始终', 'settings.terminal.behavior.osc52Clipboard': 'OSC-52 剪贴板', 'settings.terminal.behavior.osc52Clipboard.desc': '允许远程程序(tmux、vim 等)通过 OSC-52 转义序列访问本地剪贴板。', 'settings.terminal.behavior.osc52Clipboard.off': '关闭', 'settings.terminal.behavior.osc52Clipboard.writeOnly': '仅写入', 'settings.terminal.behavior.osc52Clipboard.readWrite': '读写', 'settings.terminal.behavior.osc52Clipboard.prompt': '写入 + 读取时询问', 'terminal.osc52.readPrompt.title': '剪贴板读取请求', 'terminal.osc52.readPrompt.desc': '远程程序正在请求读取您的剪贴板,是否允许?', 'terminal.osc52.readPrompt.allow': '允许', 'terminal.osc52.readPrompt.deny': '拒绝', 'settings.terminal.behavior.scrollOnInput': '输入时自动滚动', 'settings.terminal.behavior.scrollOnInput.desc': '输入时将终端滚动到底部', 'settings.terminal.behavior.scrollOnOutput': '输出时自动滚动', 'settings.terminal.behavior.scrollOnOutput.desc': '有新输出时将终端滚动到底部', 'settings.terminal.behavior.scrollOnKeyPress': '按键时自动滚动', 'settings.terminal.behavior.scrollOnKeyPress.desc': '按键(例如 Enter)时将终端滚动到底部', 'settings.terminal.behavior.scrollOnPaste': '粘贴时自动滚动', 'settings.terminal.behavior.scrollOnPaste.desc': '粘贴文本时将终端滚动到底部', 'settings.terminal.behavior.smoothScrolling': '平滑滚动', 'settings.terminal.behavior.smoothScrolling.desc': '滚动终端视口时使用平滑动画', 'settings.terminal.behavior.linkModifier': '链接修饰键', 'settings.terminal.behavior.linkModifier.desc': '按住此键再点击终端中的链接', 'settings.terminal.behavior.linkModifier.none': '无(直接点击)', 'settings.terminal.behavior.linkModifier.ctrl': 'Ctrl', 'settings.terminal.behavior.linkModifier.alt': 'Alt / Option', 'settings.terminal.behavior.linkModifier.meta': 'Cmd / Win', 'settings.terminal.scrollback.desc': '限制终端行数。设为 0 表示不限制。', 'settings.terminal.scrollback.rows': '行数 *', 'settings.terminal.section.startupCommand': '启动命令', 'settings.terminal.startupCommandDelay.label': '启动命令延迟(毫秒)', 'settings.terminal.startupCommandDelay.desc': '连接建立后等待多久再发送启动命令;启动命令为多行时,行与行之间也使用该间隔。慢连接可调大。', 'settings.terminal.keywordHighlight.title': '关键字高亮', 'settings.terminal.keywordHighlight.resetColors': '重置为默认颜色', 'settings.terminal.keywordHighlight.resetDefaults': '把内置规则恢复为默认', 'settings.terminal.keywordHighlight.resetBuiltIn': '恢复内置标签与正则', 'settings.terminal.keywordHighlight.addCustom': '添加自定义规则', 'settings.terminal.keywordHighlight.editCustom': '编辑规则', 'settings.terminal.keywordHighlight.editBuiltIn': '编辑内置规则', 'settings.terminal.keywordHighlight.labelField': '标签与颜色', 'settings.terminal.keywordHighlight.labelPlaceholder': '标签(如 Down)', 'settings.terminal.keywordHighlight.patternField': '正则表达式', 'settings.terminal.keywordHighlight.patternPlaceholder': '每行一个正则(如 \\bdown\\b)', 'settings.terminal.keywordHighlight.patternHint': '每行一个正则。匹配忽略大小写,全局匹配。', 'settings.terminal.keywordHighlight.invalidPattern': '无效的正则表达式', 'settings.terminal.keywordHighlight.preview': '预览', 'settings.terminal.section.localShell': '本地 Shell', 'settings.terminal.localShell.shell': 'Shell 可执行文件', 'settings.terminal.localShell.shell.desc': 'Shell 可执行文件的路径(例如 /bin/zsh、pwsh.exe)。留空使用系统默认。', 'settings.terminal.localShell.shell.placeholder': '系统默认', 'settings.terminal.localShell.shell.detected': '检测到', 'settings.terminal.localShell.shell.notFound': '未找到 Shell 可执行文件', 'settings.terminal.localShell.shell.isDirectory': '路径是目录,不是可执行文件', 'settings.terminal.localShell.shell.default': '系统默认', 'settings.terminal.localShell.shell.custom': '自定义...', 'settings.terminal.localShell.shell.customPath': 'Shell 可执行文件路径', 'settings.terminal.localShell.shell.customArgs': '启动参数', 'settings.terminal.localShell.shell.customArgs.placeholder': '例如 --login -i', 'settings.terminal.localShell.shell.customArgs.desc': '传给 Shell 的启动参数。部分 Shell 必须指定才能正常工作,例如 msys2 bash 需要 --login -i 才能加载环境变量。', 'settings.terminal.localShell.shell.commonPaths': '常用路径', 'settings.terminal.localShell.shell.pathValid': '路径有效', 'settings.terminal.localShell.startDir': '起始目录', 'settings.terminal.localShell.startDir.desc': '打开本地终端时的起始目录。留空使用用户主目录。', 'settings.terminal.localShell.startDir.placeholder': '用户主目录', 'settings.terminal.localShell.startDir.notFound': '目录不存在', 'settings.terminal.localShell.startDir.isFile': '路径是文件,不是目录', 'settings.terminal.section.connection': '连接', 'settings.terminal.connection.sshAutoReconnectEnabled': 'SSH 断线后自动重连', 'settings.terminal.connection.sshAutoReconnectEnabled.desc': '打开后,已连上的 SSH 会话意外断开时会每 5 秒尝试重新连接,直到关闭标签页或连接恢复。', 'settings.terminal.connection.keepaliveInterval': '会话保持间隔', 'settings.terminal.connection.keepaliveInterval.desc': '向服务器发送 SSH 保活数据包的频率(秒)。设为 0 表示全局禁用——单个主机可在自己的设置里覆盖此值。', 'settings.terminal.connection.keepaliveCountMax': '最大无响应保活次数', 'settings.terminal.connection.keepaliveCountMax.desc': '判定连接死亡前允许的无响应保活次数。值越大对短暂网络抖动和响应慢的 SSH 服务越宽容。', 'settings.terminal.connection.x11Display': 'X11 显示地址', 'settings.terminal.connection.x11Display.desc': '可选的本机 X11 显示地址。留空则使用系统默认值。', 'settings.terminal.connection.x11Display.placeholder': '自动(:0 或 DISPLAY)', 'settings.terminal.section.serverStats': '服务器状态(Linux)', 'settings.terminal.hostInfoBar.show': '显示主机信息栏', 'settings.terminal.hostInfoBar.show.desc': '在终端上方显示主机地址和服务器信息。隐藏后仍可使用操作按钮。', 'settings.terminal.hostInfoBar.titleMode': '主机信息标题', 'settings.terminal.hostInfoBar.titleMode.desc': '选择信息栏显示连接地址(user@host)还是主机名称(Vault 标签)。', 'settings.terminal.hostInfoBar.titleMode.address': '连接地址', 'settings.terminal.hostInfoBar.titleMode.label': '主机名称', 'settings.terminal.serverStats.show': '显示服务器状态', 'settings.terminal.serverStats.show.desc': '在终端状态栏显示 CPU、内存和磁盘使用情况(仅限 Linux 服务器)。', 'settings.terminal.serverStats.refreshInterval': '刷新间隔', 'settings.terminal.serverStats.refreshInterval.desc': '服务器状态刷新的频率。', 'settings.terminal.serverStats.seconds': '秒', 'settings.terminal.section.systemManager': '系统管理', 'settings.terminal.systemManager.processRefreshInterval': '进程列表刷新间隔', 'settings.terminal.systemManager.processRefreshInterval.desc': '系统管理侧栏中进程列表的刷新频率。', 'settings.terminal.systemManager.tmuxRefreshInterval': 'tmux 会话刷新间隔', 'settings.terminal.systemManager.tmuxRefreshInterval.desc': 'tmux 会话列表的刷新频率。', 'settings.terminal.systemManager.dockerListRefreshInterval': 'Docker 容器列表刷新间隔', 'settings.terminal.systemManager.dockerListRefreshInterval.desc': 'Docker 容器列表的刷新频率。', 'settings.terminal.systemManager.dockerStatsRefreshInterval': 'Docker 性能数据刷新间隔', 'settings.terminal.systemManager.dockerStatsRefreshInterval.desc': 'Docker 容器 CPU/内存/网络指标的刷新频率。', // Settings > Terminal > Rendering 'settings.terminal.section.rendering': '渲染', 'settings.terminal.rendering.renderer': '渲染器', 'settings.terminal.rendering.renderer.desc': '选择终端渲染技术。自动模式会在低内存设备上使用 DOM 渲染。更改将在新终端会话中生效。', 'settings.terminal.rendering.auto': '自动', 'settings.terminal.rendering.hibernateHiddenTabs': '隐藏标签页休眠', 'settings.terminal.rendering.hibernateHiddenTabs.desc': '标签页离开视野后释放终端渲染器以节省内存,SSH 连接保持不断。文件传输期间不会休眠。', 'settings.terminal.rendering.hibernateHiddenTabsDelay': '休眠延迟', 'settings.terminal.rendering.hibernateHiddenTabsDelay.desc': '标签页离开视野多久后释放渲染器(5–600 秒)。', 'settings.terminal.rendering.hibernateSkipAltScreen': '全屏 TUI 跳过休眠', 'settings.terminal.rendering.hibernateSkipAltScreen.desc': 'vim、htop 或 Agent TUI 占用 alternate screen 时保持终端渲染器,避免慢恢复。', 'settings.terminal.rendering.hibernateKeepRendererCount': '保留隐藏渲染器数量', 'settings.terminal.rendering.hibernateKeepRendererCount.desc': '多少个不可见标签页仅暂停 WebGL、不销毁 xterm,超出后才完整休眠。', 'settings.terminal.rendering.hibernateReplayChunkBytes': '唤醒分片大小', 'settings.terminal.rendering.hibernateReplayChunkBytes.desc': '恢复休眠终端时每帧回放的 ANSI 字节数(4–64 KB)。', 'settings.terminal.rendering.hibernatePreferWasmSerialize': '优先 WASM 序列化', 'settings.terminal.rendering.hibernatePreferWasmSerialize.desc': '在可用时使用 WASM 终端序列化,否则回退到 JS SerializeAddon。', // Settings > Terminal > Inline Images 'settings.terminal.section.inlineImages': '内联图片', 'settings.terminal.inlineImages.enabled': '渲染内联图片', 'settings.terminal.inlineImages.enabled.desc': '直接显示远端程序输出的真实图片(kitten icat、chafa、文件管理器与 TUI 的图片预览)。更改将在新终端会话中生效。', 'settings.terminal.inlineImages.kitty': 'Kitty 图形协议', 'settings.terminal.inlineImages.kitty.desc': '接受 Kitty 图形序列,包括 SSH 上的 direct/stream 传输模式。', 'settings.terminal.inlineImages.sixel': 'SIXEL', 'settings.terminal.inlineImages.sixel.desc': '接受 SIXEL 图形,img2sixel、mpv、gnuplot 等 DEC 风格工具会使用。', 'settings.terminal.inlineImages.iip': 'iTerm 内联图片协议', 'settings.terminal.inlineImages.iip.desc': '接受 iTerm2 的 OSC 1337 内联图片序列(PNG、JPEG、GIF 首帧)。', 'settings.terminal.inlineImages.storageLimit': '每终端图片缓存', 'settings.terminal.inlineImages.storageLimit.desc': '单个终端可为已解码图片保留的内存,超出后按先进先出淘汰(8–512 MB)。', 'settings.terminal.inlineImages.maxMegapixels': '单张图片上限', 'settings.terminal.inlineImages.maxMegapixels.desc': '允许解码的单张图片最大像素数,超出的图片会被丢弃且不影响终端缓冲区(1–64 MP,16 MP 即 4096 × 4096)。', 'settings.terminal.inlineImages.sequenceLimit': '单条序列上限', 'settings.terminal.inlineImages.sequenceLimit.desc': '开始解码前允许接受的单条图片转义序列大小上限(1–64 MB)。', 'settings.terminal.inlineImages.unit.mb': 'MB', 'settings.terminal.inlineImages.unit.megapixels': 'MP', 'settings.terminal.inlineImages.hibernateNote': '已绘制内联图片的标签页会保留渲染器而不进入完整休眠,因为休眠快照只能恢复文本。', // Settings > Terminal > Workspace Focus Indicator 'settings.terminal.section.workspaceFocus': '工作区焦点提示', 'settings.terminal.workspaceFocus.style': '焦点提示样式', 'settings.terminal.workspaceFocus.style.desc': '在分屏视图中如何标识当前聚焦的窗格。', 'settings.terminal.workspaceFocus.dim': '淡化未聚焦窗格', 'settings.terminal.workspaceFocus.border': '为聚焦窗格显示边框', // Settings > Terminal > Autocomplete 'settings.terminal.section.autocomplete': '自动补全', 'settings.terminal.autocomplete.enabled': '启用自动补全', 'settings.terminal.autocomplete.enabled.desc': '输入时根据历史命令和命令规范显示补全建议。', 'settings.terminal.autocomplete.ghostText': '行内建议', 'settings.terminal.autocomplete.ghostText.desc': '在光标后显示灰色的建议文本(类似 fish shell)。', 'settings.terminal.autocomplete.popupMenu': '弹出菜单', 'settings.terminal.autocomplete.popupMenu.desc': '显示包含多个建议的浮动列表。', 'settings.terminal.autocomplete.historyScope': '历史命令提示范围', 'settings.terminal.autocomplete.historyScope.desc': '选择自动补全的历史建议来自当前主机,还是所有主机上执行过的命令。', 'settings.terminal.autocomplete.historyScope.host': '当前主机', 'settings.terminal.autocomplete.historyScope.global': '全部主机', 'settings.terminal.section.passwordPromptAssist': '密码提示辅助', 'settings.terminal.passwordPromptAssist.mode': '辅助模式', 'settings.terminal.passwordPromptAssist.mode.desc': '当 sudo 或 su 要求输入密码时,提供已保存的凭据。不会在未经确认时自动发送。', 'settings.terminal.passwordPromptAssist.off': '关闭', 'settings.terminal.passwordPromptAssist.hint': '快速填充(Enter)', 'settings.terminal.passwordPromptAssist.picker': '凭据选择列表', // Settings > Shortcuts 'settings.shortcuts.section.scheme': '快捷键方案', 'settings.shortcuts.scheme.label': '键盘快捷键', 'settings.shortcuts.scheme.desc': '选择快捷键使用的键盘布局', 'settings.shortcuts.scheme.disabled': '禁用', 'settings.shortcuts.scheme.mac': 'Mac (Cmd)', 'settings.shortcuts.scheme.pc': 'PC (Ctrl)', 'settings.shortcuts.disableTerminalFontZoom.label': '禁用终端缩放', 'settings.shortcuts.disableTerminalFontZoom.desc': '关闭终端文字缩放快捷操作,包括 Cmd/Ctrl 加滚轮。', 'settings.shortcuts.shellOnlyTabNumberShortcuts.label': '标签快捷键跳过固定标签', 'settings.shortcuts.shellOnlyTabNumberShortcuts.desc': '开启后,Cmd/Ctrl+[1...9] 和 Ctrl+Tab 仅在终端、工作区、编辑器等可关闭标签页之间切换,不包括固定的 Vault 和 SFTP 标签页。', 'settings.shortcuts.showTabNumberBadges.label': '显示标签页序号角标', 'settings.shortcuts.showTabNumberBadges.desc': '按住 Cmd/Ctrl 时,在对应 Cmd/Ctrl+[1...9] 的标签页上显示 1-9,方便准确切换。', 'settings.shortcuts.section.custom': '自定义快捷键', 'settings.shortcuts.resetAll': '全部重置', 'settings.shortcuts.recording': '请按键...', 'settings.shortcuts.none': '无', 'settings.shortcuts.setDisabled': '设为禁用', 'settings.shortcuts.category.tabs': '标签页', 'settings.shortcuts.category.terminal': '终端', 'settings.shortcuts.category.navigation': '导航', 'settings.shortcuts.category.app': '应用', 'settings.shortcuts.category.sftp': 'SFTP', 'settings.shortcuts.binding.switch-tab-1-9': '切换到标签页 [1...9]', 'settings.shortcuts.binding.next-tab': '下一个标签页', 'settings.shortcuts.binding.prev-tab': '上一个标签页', 'settings.shortcuts.binding.close-tab': '关闭标签页', 'settings.shortcuts.binding.close-session': '关闭会话窗格', 'settings.shortcuts.binding.new-tab': '新建本地标签页', 'settings.shortcuts.binding.copy': '从终端复制', 'settings.shortcuts.binding.paste': '粘贴到终端', 'settings.shortcuts.binding.paste-selection': '将选区粘贴到终端', 'settings.shortcuts.binding.select-all': '全选终端内容', 'settings.shortcuts.binding.clear-buffer': '清空终端缓冲区', 'settings.shortcuts.binding.search-terminal': '打开终端搜索', 'settings.shortcuts.binding.increase-terminal-font-size': '增大终端字号', 'settings.shortcuts.binding.decrease-terminal-font-size': '减小终端字号', 'settings.shortcuts.binding.reset-terminal-font-size': '重置终端字号', 'settings.shortcuts.binding.move-focus': '在分屏间移动焦点', 'settings.shortcuts.binding.split-horizontal': '水平分屏', 'settings.shortcuts.binding.split-vertical': '垂直分屏', 'settings.shortcuts.binding.toggle-pane-zoom': '切换窗格缩放', 'settings.shortcuts.binding.open-hosts': '打开主机列表', 'settings.shortcuts.binding.open-local': '打开本地终端', 'settings.shortcuts.binding.open-sftp': '打开 SFTP', 'settings.shortcuts.binding.open-settings': '打开设置', 'settings.shortcuts.binding.port-forwarding': '打开端口转发', 'settings.shortcuts.binding.command-palette': '打开命令面板', 'settings.shortcuts.binding.quick-switch': '快速切换', 'settings.shortcuts.binding.new-workspace': '新建工作区', 'settings.shortcuts.binding.snippets': '打开代码片段', 'settings.shortcuts.binding.broadcast': '切换广播模式', 'settings.shortcuts.binding.toggle-side-panel': '切换侧边栏', 'settings.shortcuts.binding.sftp-copy': '复制文件', 'settings.shortcuts.binding.sftp-cut': '剪切文件', 'settings.shortcuts.binding.sftp-paste': '粘贴文件', 'settings.shortcuts.binding.sftp-select-all': '全选文件', 'settings.shortcuts.binding.sftp-rename': '重命名文件', 'settings.shortcuts.binding.sftp-delete': '删除文件', 'settings.shortcuts.binding.sftp-refresh': '刷新', 'settings.shortcuts.binding.sftp-new-folder': '新建文件夹', 'settings.shortcuts.binding.sftp-open': '打开文件 / 进入目录', 'settings.shortcuts.binding.sftp-go-parent': '转到上级目录', 'settings.shortcuts.binding.sftp-navigate-to': '转到选中的目录', // Host Details (sub-panels) 'hostDetails.proxyPanel.title': '通过 HTTP/SOCKS5/命令代理', 'hostDetails.proxyPanel.hostPlaceholder': '代理主机', 'hostDetails.proxyPanel.command': 'ProxyCommand', 'hostDetails.proxyPanel.commandPlaceholder': 'cloudflared access ssh --hostname %h', 'hostDetails.proxyPanel.commandHelp': '使用 %h 表示目标主机,%p 表示目标端口,%% 表示字面百分号。', 'hostDetails.proxyPanel.credentials': '凭据', 'hostDetails.proxyPanel.usernamePlaceholder': '用户名', 'hostDetails.proxyPanel.passwordPlaceholder': '密码', 'hostDetails.proxyPanel.identities': '身份', 'hostDetails.proxyPanel.keychainIdentity': '钥匙串身份', 'hostDetails.proxyPanel.manualCredentials': '手动凭据', 'hostDetails.proxyPanel.remove': '移除代理', 'hostDetails.proxyPanel.savedProxy': '已保存代理', 'hostDetails.proxyPanel.selectSaved': '选择已保存代理', 'hostDetails.proxyPanel.customProxy': '自定义代理', 'hostDetails.proxyPanel.missing': '缺失', 'hostDetails.proxyPanel.missingSaved': '保存的代理不存在', 'hostDetails.proxyPanel.missingIdentity': '钥匙串身份不存在', 'hostDetails.proxyPanel.incompleteIdentity': '代理身份需要用户名和密码', 'hostDetails.proxyPanel.unreadableIdentity': '此设备无法读取代理身份密码', 'hostDetails.proxyPanel.error.required': '代理主机和端口,或 ProxyCommand 不能为空。', 'hostDetails.envVars.title': '环境变量', 'hostDetails.envVars.desc': '为 {host} 设置环境变量。', 'hostDetails.envVars.note': '部分 SSH 服务器默认只允许以 LC_ 和 LANG_ 为前缀的变量。', 'hostDetails.envVars.variable': '变量', 'hostDetails.envVars.value': '值', 'hostDetails.envVars.newVariable': '新变量', 'hostDetails.envVars.variableName': '变量名', 'hostDetails.chain.title': '编辑链路', 'hostDetails.chain.desc': '添加另一台主机将创建到 {host} 的连接。', 'hostDetails.chain.addHost': '添加主机', 'hostDetails.chain.target': '目标', 'hostDetails.chain.availableHosts': '可用主机', 'hostDetails.chain.clear': '清空', 'hostDetails.group.title': '新建分组', 'hostDetails.group.general': '常规', 'hostDetails.group.namePlaceholder': '分组名称', 'hostDetails.group.parentPlaceholder': '父分组', 'hostDetails.group.cloudSync': '云同步', 'hostDetails.group.addProtocol': '添加协议', // Keychain 'keychain.filter.key': '密钥', 'keychain.filter.certificate': '证书', 'keychain.action.generateKey': '生成密钥', 'keychain.action.importKey': '导入密钥', 'keychain.action.newIdentity': '新建身份', 'keychain.action.importCertificate': '导入证书', 'keychain.view.grid': '网格', 'keychain.view.list': '列表', 'keychain.section.keys': '密钥', 'keychain.section.identities': '身份', 'keychain.count.items': '{count} 项', 'keychain.empty.title': '设置密钥', 'keychain.empty.desc': '导入或生成 SSH 密钥用于安全认证。', 'keychain.panel.generateKey': '生成密钥', 'keychain.panel.newKey': '新建密钥', 'keychain.panel.keyDetails': '密钥详情', 'keychain.panel.editKey': '编辑密钥', 'keychain.panel.editIdentity': '编辑身份', 'keychain.panel.newIdentity': '新建身份', 'keychain.panel.keyExport': '密钥导出', 'keychain.validation.labelRequired': '请填写密钥的 Label', 'keychain.validation.labelAndPrivateKeyRequired': 'Label 和私钥为必填项', 'keychain.validation.labelAndUsernameRequired': 'Label 和用户名为必填项', 'keychain.error.generationUnavailable': '无法生成密钥:请确保应用运行在 Electron 环境', 'keychain.error.generateKeyPairFailed': '生成密钥对失败', 'keychain.error.generateKeyFailed': '生成密钥失败', 'keychain.error.keyGenerationTitle': '密钥生成', 'keychain.export.exportTo': '导出到 *', 'keychain.export.selectHost': '选择主机', 'keychain.export.location': '位置 ~ $1 *', 'keychain.export.filename': '文件名 ~ $2 *', 'keychain.export.note': '密钥导出目前仅支持 {unix} 系统。请在 {advanced} 部分自定义导出脚本。', 'keychain.export.script': '脚本 *', 'keychain.export.scriptPlaceholder': '导出脚本...', 'keychain.export.missingCredentials': '主机未保存密码或密钥。请先为该主机添加密码凭据。', 'keychain.export.successTitle': '导出成功', 'keychain.export.successMessage': '已导出公钥并绑定到 {host}', 'keychain.export.failedTitle': '导出失败', 'keychain.export.failedMessage': '导出密钥失败:{error}', 'keychain.export.failedPrefix': '导出失败:{error}', 'keychain.export.exitCode': '命令退出码 {code}', 'keychain.export.exporting': '导出中...', 'keychain.export.exportAndAttach': '导出并绑定', 'keychain.export.title': '密钥导出', 'keychain.export.exportToRequired': '导出到 *', 'keychain.export.selectHostPlaceholder': '选择主机...', 'keychain.export.locationLabel': '位置 ~ $1 *', 'keychain.export.filenameLabel': '文件名 ~ $2 *', 'keychain.export.advanced': '高级', 'keychain.export.note.supportsOnly': '密钥导出目前仅支持', 'keychain.export.note.systems': '系统。', 'keychain.export.note.use': '请使用', 'keychain.export.note.customize': '部分自定义导出脚本。', 'keychain.export.scriptRequired': '脚本 *', 'keychain.export.exportToHost': '导出到主机', 'keychain.export.failedGeneric': '导出失败:{message}', 'keychain.field.label': 'Label', 'keychain.field.labelRequired': 'Label *', 'keychain.field.labelPlaceholder': '密钥 Label', 'keychain.field.privateKeyRequired': '私钥 *', 'keychain.field.publicKey': '公钥', 'keychain.field.certificatePlaceholder': '证书内容(可选)', 'keychain.generate.keyType': '密钥类型', 'keychain.generate.keySize': '密钥长度', 'keychain.generate.labelPlaceholder': '密钥 Label', 'keychain.generate.passphrasePlaceholder': 'Passphrase(可选)', 'keychain.generate.savePassphrase': '保存 Passphrase', 'keychain.generate.generate': '生成', 'keychain.generate.generateSave': '生成并保存', 'keychain.import.dropHint': '将密钥文件拖到这里', 'keychain.import.importFromFile': '从文件导入', 'keychain.import.saveKey': '保存密钥', 'keychain.import.importedKeyLabel': '已导入密钥', 'keychain.identity.usernameRequired': '用户名 *', 'keychain.identity.method.passwordOnly': '密码', 'keychain.identity.summary.password': '认证密码', 'keychain.identity.summary.key': '认证密钥', 'keychain.identity.summary.certificate': '认证证书', 'keychain.identity.summary.passwordAndKey': '认证密码与密钥', 'keychain.identity.summary.passwordAndCertificate': '认证密码与证书', 'keychain.identity.summary.none': '无凭据', 'keychain.identity.selectCredential': '选择{kind}', 'keychain.identity.save': '保存', 'keychain.identity.update': '更新', 'keychain.keyDialog.newTitle': '新建密钥', 'keychain.keyDialog.newDesc': '添加新的 SSH 密钥', 'keychain.keyDialog.editTitle': '编辑密钥', 'keychain.keyDialog.editDesc': '更新此 SSH 密钥', 'keychain.keyDialog.updateKey': '更新密钥', // Tabs 'tabs.closeSessionAria': '关闭会话', 'tabs.closeLogViewAria': '关闭日志视图', 'tabs.closePluginViewAria': '关闭 {title}', 'tabs.logPrefix': '日志:', 'tabs.logLocal': '本地', 'tabs.copyTab': '复制标签页', 'tabs.duplicateSession': '复制会话', 'tabs.copyTabToNewWindow': '复制标签页到新窗口', 'tabs.copyTabToNewWindowFailed': '无法在新窗口打开标签页', 'tabs.closeOthers': '关闭其他标签', 'tabs.closeToRight': '关闭右侧标签', 'tabs.closeAll': '关闭所有标签', 'keychain.edit.labelRequired': 'Label *', 'keychain.edit.keyLabelPlaceholder': '密钥 Label', 'keychain.edit.privateKeyRequired': '私钥 *', 'keychain.edit.publicKey': '公钥', 'keychain.edit.certificate': '证书', 'keychain.edit.certificatePlaceholder': '证书内容(可选)', 'keychain.edit.filePath': '文件路径', 'keychain.edit.keyExport': '密钥导出', 'keychain.edit.exportToHost': '导出到主机', // Snippets 'snippets.searchPlaceholder': '搜索脚本...', 'snippets.action.newSnippet': '新建代码片段', 'snippets.action.newPackage': '新建脚本包', 'snippets.action.import': '导入', 'snippets.action.selectSnippets': '选择代码片段', 'snippets.panel.newTitle': '新建代码片段', 'snippets.panel.editTitle': '编辑代码片段', 'snippets.panel.newAutomationTitle': '新建自动化脚本', 'snippets.panel.editAutomationTitle': '编辑自动化脚本', 'snippets.panel.resizeWidth': '调整面板宽度', 'snippets.field.description': '描述', 'snippets.field.descriptionPlaceholder': '例如:check network load', 'snippets.field.package': '添加脚本包', 'snippets.field.packagePlaceholder': '选择或创建脚本包', 'snippets.field.createPackage': '创建脚本包', 'snippets.field.scriptRequired': '脚本 *', 'snippets.scriptEditor.expand': '弹窗编辑', 'snippets.scriptEditor.resize': '调整编辑器高度', 'snippets.scriptEditor.modalTitle': '编辑脚本', 'snippets.targets.title': '执行目标', 'snippets.targets.add': '添加目标', 'snippets.targets.selectHosts': '选择主机', 'snippets.targets.selectGroups': '选择分组', 'snippets.targets.noGroups': '未找到分组', 'snippets.targets.allHosts': '对所有主机生效', 'snippets.targets.allHostsShort': '所有主机', 'snippets.targets.allHostsActive': '将作用于所有可连接的主机。', 'snippets.history.title': 'Shell 历史', 'snippets.history.subtitle': '{count} 条命令', 'snippets.history.emptyTitle': '暂无 Shell 历史', 'snippets.history.emptyDesc': '你执行过的命令会显示在这里', 'snippets.history.loadMore': '加载更多', 'snippets.history.separator': '•', 'snippets.history.labelPlaceholder': '为此代码片段设置一个 Label', 'snippets.history.saveAsSnippet': '保存为代码片段', 'snippets.history.time.justNow': '刚刚', 'snippets.history.time.minutesAgo': '{count} 分钟前', 'snippets.history.time.hoursAgo': '{count} 小时前', 'snippets.history.time.daysAgo': '{count} 天前', 'snippets.breadcrumb.allPackages': '全部脚本包', 'snippets.breadcrumb.separator': '›', 'snippets.empty.title': '创建脚本', 'snippets.empty.desc': '将常用命令保存为代码片段,或编写自动化脚本来处理重复运维任务。', 'snippets.search.noResults.title': '无匹配结果', 'snippets.search.noResults.desc': '没有脚本或脚本包与"{query}"匹配。换一个关键字,或清除搜索进行浏览。', 'snippets.section.packages': '脚本包', 'snippets.section.snippets': '脚本', 'snippets.kind.codeSnippet': '代码片段', 'snippets.kind.automationScript': '自动化脚本', 'snippets.package.count': '{count} 个脚本', 'snippets.commandFallback': '命令', 'snippets.view.grid': '网格', 'snippets.view.list': '列表', 'snippets.selection.selected': '已选择 {count} 个', 'snippets.selection.selectVisible': '选择当前显示', 'snippets.selection.deselectAll': '取消选择', 'snippets.selection.exportSelected': '导出选中({count})', 'snippets.selection.deleteSelected': '删除({count})', 'snippets.selection.deleteConfirmTitle': '删除选中的 {count} 项?', 'snippets.selection.deleteConfirmDesc': '所选项目将被永久删除,此操作无法撤销。', 'snippets.selection.deleteSuccess': '已删除 {count} 个所选项目。', 'snippets.export.snippet': '导出代码片段', 'snippets.export.package': '导出脚本包', 'snippets.export.toast.empty': '没有可导出的代码片段。', 'snippets.export.toast.successTitle': '导出已准备好', 'snippets.export.toast.success': '已导出 {count} 个代码片段。', 'snippets.import.toast.empty': '没有找到可导入的代码片段。', 'snippets.import.toast.failedTitle': '导入失败', 'snippets.import.toast.invalidDesc': '这不是有效的 NetMesh 代码片段文件。', 'snippets.import.toast.successTitle': '导入完成', 'snippets.import.toast.summary': '已导入 {imported} 个,覆盖 {overwritten} 个,跳过 {skipped} 个。', 'snippets.import.modal.title': '导入代码片段', 'snippets.import.modal.desc': '选择一个或多个 NetMesh 代码片段 JSON 文件。导入前会先解析并展示结果,不会直接写入。', 'snippets.import.modal.exampleTitle': '示例 JSON', 'snippets.import.modal.noFile': '还没有选择文件。可以参考下面的格式,也可以直接使用代码片段 JSON 数组,然后选择一个或多个文件。', 'snippets.import.modal.chooseFile': '选择文件', 'snippets.import.modal.downloadExamples': '下载示例文件', 'snippets.import.modal.multipleFiles': '已选择 {count} 个文件', 'snippets.import.modal.parsedSummary': '{files} 个文件,{total} 个脚本,{packages} 个脚本包,{conflicts} 个重复命令。主机绑定会被忽略。', 'snippets.import.modal.confirm': '确认导入', 'snippets.import.conflict.title': '导入代码片段?', 'snippets.import.conflict.desc': '“{file}”包含 {total} 个代码片段,其中 {conflicts} 个命令已存在。', 'snippets.import.conflict.hostBindingsNote': '代码片段的主机绑定不会被导入或导出。', 'snippets.import.conflict.skip': '跳过重复项', 'snippets.import.conflict.overwrite': '覆盖重复项', 'snippets.packageDialog.title': '新建脚本包', 'snippets.packageDialog.parent': '父级:{parent}', 'snippets.packageDialog.root': '根目录', 'snippets.packageDialog.placeholder': '例如:ops/maintenance', 'snippets.packageDialog.hint': '使用 "/" 创建嵌套脚本包。', // Snippets Rename Dialog 'snippets.renameDialog.title': '重命名脚本包', 'snippets.renameDialog.currentPath': '当前路径:{path}', 'snippets.renameDialog.placeholder': '输入新名称', 'snippets.renameDialog.error.empty': '脚本包名称不能为空', 'snippets.renameDialog.error.duplicate': '已存在同名的脚本包', 'snippets.renameDialog.error.invalidChars': '脚本包名称只能包含字母、数字、连字符和下划线', 'snippets.field.noAutoRun': '仅粘贴(不自动执行)', 'snippets.field.multiLineRunMode': '多行运行方式', 'snippets.field.multiLineRunMode.paste': '一次性发送', 'snippets.field.multiLineRunMode.lineDelay': '逐行发送', 'snippets.field.multiLineRunModeHint': '登录提示、网络设备宏等场景可用逐行发送。', // Snippet Shortkey 'snippets.field.shortkey': '快捷键', 'snippets.shortkey.placeholder': '点击设置快捷键', 'snippets.shortkey.recording': '请按下快捷键组合...', 'snippets.shortkey.hint': '在终端中按下此快捷键可快速发送命令。', 'snippets.shortkey.clear': '清除快捷键', 'snippets.shortkey.error.systemConflict': '此快捷键与「{name}」冲突', 'snippets.shortkey.error.snippetConflict': '此快捷键已被代码片段使用:{name}', 'snippets.variables.dialogTitle': '填写变量', 'snippets.variables.dialogDesc': '运行「{label}」前请填写以下变量。', 'snippets.variables.hint': '变量值将原样插入脚本(不会进行 shell 转义)。', 'snippets.variables.preview': '预览', 'snippets.variables.placeholder': '请输入', 'snippets.variables.placeholderDefault': '默认:{value}', 'snippets.variables.required': '请填写此变量', 'snippets.variables.run': '运行', 'snippets.field.variablesHelp': '在脚本中使用 {{名称}} 或 {{名称:默认值}} 定义变量。', 'snippets.field.variablesDetected': '变量', 'snippets.field.variableDefault': '默认 {value}', // Serial Port 'serial.button': '串口', 'serial.modal.title': '连接串口', 'serial.modal.desc': '配置串口连接参数', 'serial.field.port': '串口', 'serial.field.selectPort': '选择串口...', 'serial.field.baudRate': '波特率', 'serial.field.dataBits': '数据位', 'serial.field.stopBits': '停止位', 'serial.field.stopBits15Warning': '1.5 停止位在 Windows 下可能不被所有设备支持', 'serial.field.parity': '校验位', 'serial.field.flowControl': '流控制', 'serial.noPorts': '未检测到串口设备。请连接设备后刷新。', 'serial.field.customPort': '自定义串口路径', 'serial.field.customPortPlaceholder': '例如 /dev/ttys001 或 COM1', 'serial.type.hardware': '硬件', 'serial.type.pseudo': '虚拟终端', 'serial.type.custom': '自定义', 'serial.parity.none': '无', 'serial.parity.even': '偶校验', 'serial.parity.odd': '奇校验', 'serial.parity.mark': 'Mark', 'serial.parity.space': 'Space', 'serial.flowControl.none': '无', 'serial.flowControl.xon/xoff': 'XON/XOFF (软件)', 'serial.flowControl.rts/cts': 'RTS/CTS (硬件)', 'serial.field.localEcho': '强制本地回显', 'serial.field.localEchoDesc': '本地回显输入字符(用于没有远程回显的设备)', 'serial.field.lineMode': '行模式', 'serial.field.lineModeDesc': '缓冲输入,按回车后发送(而不是逐字符发送)', 'serial.field.backspaceBehavior': '回退键', 'serial.field.backspaceBehaviorDesc': '如果网络设备不响应默认回退键,请改用 Ctrl+H。', 'serial.backspace.default': '默认(DEL,0x7F)', 'serial.backspace.ctrlH': 'Ctrl+H(BS,0x08)', 'serial.field.charset': '字符编码', 'serial.connectionError': '连接串口失败', 'serial.field.baudRatePlaceholder': '选择或输入波特率...', 'serial.field.baudRateEmpty': '输入自定义波特率', 'serial.field.customBaudRate': '使用自定义波特率', 'serial.field.saveConfig': '保存配置', 'serial.field.saveConfigDesc': '将此串口配置保存到主机列表以便快速访问', 'serial.field.configLabel': '配置名称', 'serial.field.configLabelPlaceholder': '例如 Arduino Uno', 'serial.connectAndSave': '连接并保存', 'serial.edit.title': '串口设置', // Keyboard Interactive Authentication (2FA/MFA) 'keyboard.interactive.title': '需要验证', 'keyboard.interactive.desc': '服务器需要额外的身份验证。', 'keyboard.interactive.descWithHost': '服务器 {hostname} 需要额外的身份验证。', 'keyboard.interactive.response': '响应', 'keyboard.interactive.enterCode': '输入验证码', 'keyboard.interactive.enterResponse': '输入响应', 'keyboard.interactive.submit': '提交', 'keyboard.interactive.verifying': '验证中...', 'keyboard.interactive.savePassword': '保存密码', // Passphrase Modal for encrypted SSH keys 'passphrase.title': 'SSH 密钥密码', 'passphrase.desc': '请输入 {keyName} 的密码', 'passphrase.descWithHost': '请输入 {keyName} 的密码以连接到 {hostname}', 'passphrase.label': '密码', 'passphrase.keyPath': '密钥', 'passphrase.unlock': '解锁', 'passphrase.unlocking': '解锁中...', 'passphrase.skip': '跳过', 'passphrase.remember': '记住此密码', // Text Editor 'sftp.editor.wordWrap': '自动换行', 'sftp.editor.maximize': '最大化', 'sftp.editor.unsavedTitle': '未保存的修改', 'sftp.editor.unsavedMessage': '{fileName} 有未保存的修改,是否保存后关闭?', 'sftp.editor.discardChanges': '不保存', 'sftp.editor.saveAndClose': '保存并关闭', 'sftp.editor.quitBlockedByDirty': '存在未保存的编辑器,请先处理后再退出', };