Files
Firelink/src/i18n/catalogs/zh-CN.ts
T
2026-08-02 09:22:15 +03:30

908 lines
45 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
const zhCN = {
navigation: {
library: '库',
filters: {
all: '全部',
active: '进行中',
completed: '已完成',
unfinished: '未完成',
},
categories: {
musics: '音乐',
movies: '视频',
compressed: '压缩包',
documents: '文档',
pictures: '图片',
applications: '应用程序',
other: '其他',
},
folders: '文件夹',
queues: '队列',
tools: '工具',
scheduler: '计划任务',
speedLimiter: '速度限制',
logs: '日志',
settings: '设置',
},
actions: {
hideSidebar: '隐藏侧边栏',
showSidebar: '显示侧边栏',
resizeSidebar: '调整侧边栏大小',
cancel: '取消',
continue: '继续',
dismissNotification: '关闭通知',
queueName: '队列名称',
addNewQueue: '新建队列',
startQueue: '开始队列',
pauseQueue: '暂停队列',
renameQueue: '重命名队列',
deleteQueue: '删除队列',
},
dialogs: {
errorBoundary: {
title: '出现了一些问题。',
description: 'React 组件树中发生了严重错误。下面的错误详情可以帮助确定根本原因。',
reload: '重新加载应用',
},
duplicateDownloads: {
title: '检测到重复下载',
description: '您要添加的一些下载已存在于队列或磁盘上。请选择如何解决这些冲突。',
rename: '重命名',
replace: '替换',
skip: '跳过',
applyToAll: '应用于全部',
renameAll: '全部重命名',
replaceAll: '全部替换',
skipAll: '全部跳过',
},
removeDownload: {
title: '移除下载',
confirmationSingle: '您确定要从列表中移除此项目吗?您也可以选择同时从磁盘中删除底层文件。',
confirmationMultiple: '您确定要从列表中移除这 {{count}} 个项目吗?您也可以选择同时从磁盘中删除底层文件。',
errorSummary: '成功移除 {{succeeded}} 个,失败 {{failed}} 个:{{detail}}',
remove: '移除',
deleteFile: '删除文件',
},
},
window: {
controls: '窗口控制',
close: '关闭',
minimize: '最小化',
maximize: '最大化',
},
downloads: {
actions: {
moveUp: '上移',
moveDown: '下移',
pause: '暂停',
start: '开始',
resume: '恢复',
options: '选项',
},
size: {
downloadedOf: '已下载 {{downloaded}} / 共 {{total}} {{unit}}',
downloadedOfApproximate: '已下载 {{downloaded}} / 预估共 {{total}} {{unit}}',
},
status: {
ready: '就绪',
staged: '在队列中',
queued: '已排队',
downloading: '下载中',
processing: '处理中',
seeding: '做种中',
paused: '已暂停',
completed: '已完成',
failed: '失败',
retrying: '重试中',
},
values: {
processing: '处理中…',
muxing: '混流中…',
},
},
speedLimiter: {
title: '速度限制',
unlimited: '不限速',
saveLimit: '保存限制',
globalSpeedLimit: '全局速度限制',
description: '适用于新的和活动中的 aria2 传输以及新的 yt-dlp 媒体下载。单个下载的专属限制仍将保留。',
quickPresets: '快捷预设',
removePreset: '移除 {{value}} {{unit}} 预设',
customPresetIn: '自定义预设 (单位:{{unit}})',
addQuickPreset: '添加快捷预设',
globalLimitSaved: '全局限制已保存为 {{value}} {{unit}}',
globalLimitDisabled: '全局速度限制已禁用',
saveFailed: '无法保存全局速度限制:{{detail}}',
presetAlreadyExists: '{{value}} {{unit}} 已在快捷预设中',
presetAdded: '已添加 {{value}} {{unit}} 快捷预设',
presetRemoved: '已移除 {{value}} {{unit}} 快捷预设',
},
logs: {
title: '日志',
entries: '({{count}} 条)',
collecting: '收集中',
off: '关闭',
allLevels: '所有级别',
levels: {
error: '错误',
warn: '警告',
info: '信息',
debug: '调试',
trace: '追踪',
},
pauseLogging: '暂停诊断日志记录',
enableLogging: '启用诊断日志记录',
clearDisplayed: '清除显示的日志',
export: '导出日志',
exportButton: '导出日志',
logFiles: '日志文件',
localDiagnostics: '本地诊断:',
diagnosticsDescription: '诊断信息的收集需要主动开启,范围有限,并且仅在本地进行。常见的密钥、URL 查询参数和主目录路径在显示和导出时都会被隐藏。不会自动上传任何数据。',
noEntries: '尚无持久化的日志条目。',
disabledDescription: '诊断日志记录已关闭。现有的支持日志将在可用时显示在此处。',
copy: '复制',
copied: '已复制到剪贴板',
copyFailed: '复制到剪贴板失败',
exported: '支持日志已导出',
exportFailed: '无法导出日志:{{detail}}',
cleared: '日志已清除',
clearFailed: '无法清除日志:{{detail}}',
enabled: '已启用诊断日志记录',
disabled: '已禁用诊断日志记录',
updateFailed: '无法更新诊断日志记录:{{detail}}',
},
scheduler: {
title: '计划任务',
running: '运行中',
disabled: '计划任务已禁用',
noScheduledDay: '未选择计划日期',
unsavedChanges: '未保存的更改',
runNow: '立即运行',
pause: '暂停',
saveSettings: '保存设置',
timing: '时间',
startTime: '开始时间',
stopTime: '停止时间',
timingDescription: '如果在开始时间 Firelink 处于休眠状态,它会在当天晚些时候恢复运行时启动所选队列,除非停止时间已过。',
runEveryDay: '每天运行',
queuesToSchedule: '要计划运行的队列',
defaultQueue: '默认队列',
afterCompletion: '完成后',
afterCompletionDescription: '选择计划任务启动的下载完成后的操作。',
actionWarning: '此操作可能会中断计算机上的其他工作。Firelink 会在计划的队列完成后立即执行它。',
systemPermissions: '系统权限',
macPermissionDescription: '睡眠、重启和关机需要 macOS 系统事件的自动化权限。',
permissionGranted: '已授予自动化权限',
permissionChecking: '正在检查自动化权限…',
permissionMissing: '缺少自动化权限',
revokePermission: '撤销权限',
grantPermission: '授予权限',
permissionAvailable: '自动化权限可用。',
permissionMissingDetails: '缺少自动化权限。请在“系统设置”的“系统事件”的“自动化”下启用 Firelink。',
revokePermissionDetails: 'macOS 不允许 Firelink 直接撤销自动化权限。请在“系统设置”中撤销“系统事件”访问权限,然后返回 Firelink。',
requestingPermission: '正在请求自动化权限…',
enablePermissionDetails: '请在“系统设置”的“系统事件”的“自动化”下启用 Firelink,然后返回 Firelink。',
systemActions: '系统操作',
windowsActionsDescription: '睡眠、重启和关机使用 Windows 系统权限。Firelink 在运行时会报告任何被拒绝的操作;不会提前声明任何永久权限。',
linuxActionsDescription: '睡眠、重启和关机使用您的 Linux 桌面和系统策略。Firelink 在运行时会报告任何被拒绝的操作;不会提前声明任何永久权限。',
validationDay: '至少为计划任务选择一天',
validationQueue: '至少为计划任务选择一个队列',
validationStopTime: '停止时间必须晚于开始时间',
saved: '计划任务设置已保存',
trackingOne: '正在跟踪 1 个计划的下载',
trackingMany: '正在跟踪 {{count}} 个计划的下载',
noStartableDownloads: '所选队列中没有可开始的下载',
pausedOne: '已暂停 1 个活动的下载',
pausedMany: '已暂停 {{count}} 个活动的下载',
noActiveDownloads: '没有活动的下载',
days: {
su: '日',
mo: '一',
tu: '二',
we: '三',
th: '四',
fr: '五',
sa: '六',
},
postActions: {
none: '不执行任何操作',
sleep: '睡眠',
restart: '重启',
shutdown: '关机',
},
},
properties: {
progress: '进度',
size: '大小',
speed: '速度',
eta: '剩余时间',
connections: '连接数',
connectionCount: '{{active}}/{{total}} 个连接',
connectionCountUnknown: '—/{{total}} 个连接',
connectionsUnavailable: '—',
speedCap: '速度上限',
liveSpeedLimit: '实时速度上限',
liveSpeedLimitHint: '仅适用于正在进行的普通下载。媒体下载运行时无法更改速度。',
liveSpeedLimitPlaceholder: '例如 1024K',
liveSpeedLimitApply: '应用',
liveSpeedLimitClear: '清除',
liveSpeedLimitFailed: '无法更新实时速度上限:{{detail}}',
liveSpeedLimitUnavailable: '媒体下载运行时无法使用实时速度控制。',
liveTorrentUploadLimit: '实时种子上传限速',
liveTorrentUploadLimitHint: '适用于活跃的种子下载和做种。清空后可移除该种子的上传限速。',
liveTorrentUploadLimitPlaceholder: '例如 1024K',
liveTorrentUploadLimitFailed: '无法更新实时种子上传限速:{{detail}}',
liveTorrentPeerOptions: 'Torrent 实时对等节点控制',
liveTorrentPeerOptionsApply: '应用节点控制',
liveTorrentPeerOptionsHint: '无需替换活动 Torrent 即可应用。留空以使用 Aria2 默认值。',
torrentPeerOptionsSavedHint: '按 Torrent 保存。0 个节点表示不限制;留空使用 Aria2 默认值。',
torrentTrackers: '其他 Torrent Tracker',
torrentTrackersHint: '每行一个 HTTP、HTTPS 或 UDP Tracker。不允许填写凭据。',
torrentTrackersInvalid: 'Torrent Tracker 列表无效。请使用不含凭据的 HTTP、HTTPS 或 UDP 地址。',
torrentExcludeTrackers: '排除的 Torrent Tracker',
torrentExcludeTrackersHint: '每行一个 HTTP、HTTPS 或 UDP Tracker,或使用 * 排除所有 announce 地址。不允许填写凭据;不会更改 DHT 和 PEX 设置。',
torrentExcludeTrackersInvalid: '排除的 Torrent Tracker 列表无效。请使用不含凭据的 HTTP、HTTPS 或 UDP 地址,或使用 *。',
torrentVerifyIntegrity: '验证 Torrent 完整性',
torrentVerifyIntegrityHint: '在 Torrent 启动或重试时应用。可能会重新检查分片并重新下载损坏的数据;活动传输期间无法更改。',
torrentMaxPeers: 'Torrent 最大对等节点数',
torrentPeerSpeedLimit: '对等节点速度阈值',
torrentMaxPeersInvalid: 'Torrent 最大对等节点数必须是 0 到 1000 之间的整数',
torrentPeerSpeedLimitInvalid: '对等节点速度阈值必须大于零',
torrentPeerDiagnostics: 'Torrent 对等节点诊断',
torrentPeerDiagnosticsRefresh: '刷新',
torrentPeerDiagnosticsLoading: '正在加载对等节点诊断…',
torrentPeerDiagnosticsUnavailable: 'Torrent 活跃时可查看对等节点诊断。',
torrentPeerDiagnosticsFailed: '无法读取 Torrent 对等节点诊断。',
torrentPeerDiagnosticsHint: '仅显示速度和连接状态;不会保留对等节点 IP、端口、ID 或位域。',
torrentPeerCount: '{{total}} 个节点 · {{seeders}} 个做种节点',
torrentPeerDownload: '下载',
torrentPeerUpload: '上传',
torrentPeerSeeder: '做种',
torrentPeerAmChoking: 'Firelink 限制中',
torrentPeerChoking: '对等节点限制中',
torrentPeerShowing: '显示 {{total}} 个节点中的 {{shown}} 个。',
seconds: '秒',
torrentStopTimeout: '在此时间后停止无速度 Torrent',
torrentStopTimeoutHint: 'Aria2 会在速度连续为 0 B/s 达到此秒数后停止该 Torrent。0 表示禁用;更改会在 Torrent 启动或重试时应用。',
torrentStopTimeoutInvalid: 'Torrent 停止超时必须是 0 到 604800 秒之间的整数',
torrentPrioritizePiece: '优先下载 Torrent 片段',
torrentPrioritizePieceHint: '可选的 Aria2 预览策略:开头、结尾或两者;每项可使用 1M 等大小。Torrent 启动或重试时应用。',
torrentPrioritizePieceInvalid: 'Torrent 片段优先级必须使用开头和/或结尾,并可选 1K 到 1024M 的大小',
liveTorrentPeerOptionsFailed: '无法更新 Torrent 实时对等节点控制:{{detail}}',
category: '类别',
lastTry: '上次尝试',
dateAdded: '添加日期',
destination: '保存目录',
lastError: '上次错误',
saved: ' (已保存)',
defaultValue: ' (默认)',
savedTooltip: '已为此下载保存;设置中的更改将应用于新的下载。',
defaultTooltip: '对新的下载使用当前默认值。',
identityReadOnly: '文件标识为只读。传输设置会保存以备重新下载使用。',
transferSettings: '停止或暂停后可以更改传输设置。当前的传输会保留其现有的后端选项。',
download: '下载',
url: 'URL',
fileName: '文件名',
saveLocation: '保存位置',
select: '选择',
perFile: '每个文件',
useCurrentDefault: '使用当前默认值 ({{count}})',
savedPerDownload: '按下载保存。设置中的默认值将应用于新下载。',
limit: '限制',
siteLogin: '站点登录',
siteLoginRedownload: '重新下载的站点登录',
matchingSiteLogin: '匹配的站点登录',
customCredentials: '自定义凭据',
noLogin: '无登录',
useSavedLogin: '如果可用,将使用保存的登录信息。',
advancedTransfer: '高级传输',
advancedTransferRedownload: '重新下载的高级传输',
checksum: '校验和',
verify: '验证',
algorithm: '算法',
digest: '哈希值',
expectedDigest: '预期哈希值',
cookies: 'Cookie',
headers: '请求头',
mirrors: '镜像源',
username: '用户名',
password: '密码',
enterValidUrl: '请输入有效的 URL。',
fileNameEmpty: '文件名不能为空。',
cancel: '取消',
save: '保存',
},
keychain: {
title: '需要凭据存储访问权限',
stores: {
portable: '便携式 Firelink 数据文件夹',
windows: 'Windows 凭据管理器',
linux: '您的 Linux 凭据存储',
macos: 'macOS 钥匙串',
system: '此系统的凭据存储',
siteCredentials: '系统的凭据存储',
},
grantLabelPortable: '继续',
grantLabelMacos: '授予访问权限',
grantLabelDefault: '启用安全存储',
description: 'Firelink 使用浏览器扩展来捕获下载。要在重启后保持扩展配对,Firelink 会将其配对令牌存储在{{pairingStore}}中。可选的站点凭据存储在{{siteCredentialStore}}中。',
portableExplanation: '配对令牌可与此文件夹一起移植。站点凭据保留在系统凭据存储中;授予访问权限后可能会出现系统提示。',
macosExplanation: '授予访问权限后,macOS 可能会显示钥匙串提示。',
defaultExplanation: '这通常会在后台静默完成。如果凭据服务不可用,Firelink 将在此处显示错误,并且扩展仅在本次会话期间保持配对状态。',
note: '注意:',
portableNote: '便携模式仅在此文件夹中存储配对令牌。它不会复制站点密码或浏览器凭据。',
defaultNote: 'Firelink 仅写入其自己的专用凭据条目。它无法访问您系统上保存的其他密码或凭据项。',
hint: '提示:',
portableHint: '便携配对令牌已与此文件夹一起存储;您可以在此处启用它,也可以选择“稍后”。',
defaultHint: '如果您选择“稍后”,扩展仅在本次会话中工作。',
enableFromSettings: '您可以随时从“设置 > 集成”中启用存储。',
later: '稍后',
enabling: '正在启用…',
waitingForPrompt: '正在等待系统提示…',
timeout: '凭据存储请求超时。您可以选择“稍后”并重试。',
unavailable: '{{store}}不可用。',
accessRequired: '在重新生成配对令牌之前,请授予凭据存储访问权限。',
storeUnavailable: '凭据存储访问不可用。',
},
app: {
loading: '加载中…',
settingsSaveFailed: '无法保存设置。请检查存储权限并重试。',
systemActionCountdown: '10 秒后{{action}}。',
systemActionCancelled: '系统操作已取消,因为有其他下载正在进行或已排队。',
systemActionFailed: '计划的系统操作失败:{{detail}}',
downloadCompleteTitle: '下载完成',
downloadCompleteBody: '{{fileName}} 已下载完成。',
unknownFile: '未知文件',
downloadFailedTitle: '下载失败',
downloadFailedBody: '{{fileName}} 下载失败。',
initializeDownloadsFailed: '无法初始化已保存的下载:{{detail}}',
extensionDisconnected: '浏览器扩展已断开连接,因为其配对令牌已更改。',
copyToken: '复制令牌',
integrations: '集成',
copyTokenFailed: '无法复制配对令牌:{{detail}}',
credentialPersistenceFailed: '安全凭据持久化不可用。浏览器配对仅适用于本次会话:{{detail}}',
resumeDownloadsFailed: '无法恢复已保存的下载:{{detail}}',
updateAvailable: 'Firelink {{version}} 可用。',
viewRelease: '查看发布版本',
sleepPreventionFailed: '无法更新睡眠阻止状态:{{detail}}',
schedulerNoQueues: '计划任务未选择有效的队列。请更新计划任务设置。',
schedulerPauseOneFailed: '计划任务无法暂停 1 个下载。',
schedulerPauseManyFailed: '计划任务无法暂停 {{count}} 个下载。',
scheduledIncomplete: '并非所有计划的下载都已完成。已跳过队列后系统操作。',
scheduledActionSkippedActive: '已跳过计划的系统操作,因为有其他下载正在进行或已排队。',
notificationsDisabled: '系统的 Firelink 通知已被禁用。',
notificationsFailed: '无法配置通知:{{detail}}',
},
sidebar: {
deleteQueueConfirm: '删除队列“{{name}}”?其未完成的下载将被移至主队列。',
deleteQueueFailed: '无法删除队列:{{detail}}',
queueNameEmpty: '队列名称不能为空',
queueNameExists: '同名队列已存在',
startQueueFailed: '无法启动队列:{{detail}}',
pauseQueueFailed: '无法暂停队列:{{detail}}',
queueConcurrency: '并行下载数',
queueConcurrencyGlobal: '使用全局限制',
queueConcurrencyFailed: '无法更新队列并发数:{{detail}}',
},
downloadTable: {
unknownQueue: '未知队列',
allDownloads: '所有下载',
active: '进行中',
completed: '已完成',
unfinished: '未完成',
headers: {
fileName: '文件名',
size: '大小',
status: '状态',
speed: '速度',
eta: '剩余时间',
dateAdded: '添加日期',
},
columnOptions: {
open: '{{column}}列选项',
dragToReorder: '拖动以重新排列列',
alignContent: '内容位置',
left: '左',
center: '居中',
right: '右',
resetLayout: '重置列布局',
},
addDownload: '添加下载',
resumeAll: '全部恢复',
pauseAll: '全部暂停',
summary: {
items: '{{count}} 个项目',
selected: '已选择 {{count}}',
downloaded: '已下载',
remaining: '剩余',
active: '进行中',
unknown: '未知',
estimated: '估计 {{value}}',
},
queueEmpty: '队列为空',
noCompletedDownloads: '没有已完成的下载',
noDownloads: '没有下载',
queueEmptyDescription: '通过项目菜单或“添加”窗口将下载添加到此队列。',
completedDescription: '已完成的下载将显示在此处。',
clickToAdd: '点击',
addButtonOr: '按钮或',
toAddDownloads: '来添加下载',
queueReorderHint: '拖动行调整顺序,或使用快捷键:',
queueReorderShortcut: '{{key}} + 上/下箭头可移动当前行',
queuePriorityControls: '移动队列中选中的下载',
queueDragHandle: '拖动 {{fileName}} 调整顺序',
queueReorderFailed: '无法调整下载顺序',
nonResumableOne: '1 个下载不支持断点续传。如果您暂停它,稍后您将不得不重新开始。确定要暂停吗?',
nonResumableMany: '{{count}} 个下载不支持断点续传。如果您暂停它们,稍后您将不得不重新开始。确定要暂停吗?',
interactionError: '{{message}}{{detail}}',
openFileFailed: '无法打开下载的文件',
revealFileFailed: '无法在文件管理器中显示下载',
pauseFailed: '无法暂停下载',
resumeFailed: '无法恢复 {{fileName}}',
moveManyFailed: '无法将下载移动到队列',
moveOneFailed: '无法将下载移动到队列',
copyAddressesFailed: '无法复制地址',
copyAddressFailed: '无法复制地址',
copyPathFailed: '无法复制文件路径',
missingFileName: '缺少文件名',
redownloadFailed: '重新下载失败',
startResume: '开始/恢复',
addToQueue: '添加到队列',
copyAddress: '复制地址',
remove: '移除',
open: '打开',
showInFolder: '在文件夹中显示',
pause: '暂停',
start: '开始',
resume: '恢复',
redownload: '重新下载',
copyFilePath: '复制文件路径',
properties: '属性',
backendRejectedStart: '后端拒绝了启动/恢复请求。',
transferActive: '传输处于活动状态时无法更改属性。请先暂停它。',
redownloadNotFound: '无法重新下载:未找到下载。',
redownloadActive: '无法重新下载{{status}}的下载。请先暂停或等待其完成。',
originalUrlMissing: '无法重新下载:缺少原始 URL。',
pauseBeforeMove: '请在将 {{file}} 移动到另一个队列前暂停它。',
},
addDownloads: {
unknownSize: '未知大小',
unknown: '未知',
discardSetup: '放弃此下载设置吗?',
speedInvalid: '速度限制必须大于零',
duplicateResolveFailed: '无法解决重复的下载:{{detail}}',
addedWithFailures: '添加了 {{added}} 个,失败了 {{failed}} 个。{{detail}}',
addedOne: '添加了 1 个下载',
addedMany: '添加了 {{count}} 个下载',
updatedOne: '已更新 1 个下载',
updatedMany: '已更新 {{count}} 个下载',
urlAlreadyQueued: 'URL 已在队列中',
destinationConflict: '其他选定的下载已使用此目标路径',
existingDownloadDestination: '现有的 Firelink 下载已使用此目标路径',
matchingDownloadFilename: '已有一个未完成的下载使用此文件名',
fileExistsOnDisk: '磁盘上已存在该文件;请重命名或跳过以避免覆盖无关数据',
backendRejectedStart: '后端拒绝开始下载。',
playlistNoEntries: '播放列表不包含可下载的条目',
invalidMediaMetadata: '媒体元数据无效或未找到格式',
noAvailableName: '无法为 {{file}} 找到可用的名称。',
pauseBeforeReplace: '请在替换 {{file}} 前暂停它。',
cannotReplace: '无法替换 {{file}}:文件不属于 Firelink 下载。',
downloadLinks: '下载链接',
pastePlaceholder: '在此粘贴 HTTP、HTTPS、FTP、SFTP 或 magnet URL…也可以在下方选择 .torrent 文件。\n\n对于媒体下载,请粘贴来自 YouTube、X、TikTok、Instagram、Reddit 等的链接。',
playlistSummary: '播放列表“{{title}}”:已加载 {{loaded}} / {{total}} 个条目{{truncated}}{{skipped}}',
safeEntryLimit: ' (达到安全条目限制)',
selectedSummary: '准备就绪 {{ready}} 个,后备项 {{fallback}} 个,媒体重试 {{mediaRetry}} 个,已屏蔽 {{blocked}} 个',
clearSelection: '清除选择',
selectAll: '全选',
refreshMetadata: '刷新元数据',
files: '文件',
torrentFiles: '种子文件',
chooseTorrentFiles: '添加 .torrent 文件',
torrentMetadataPending: '传输开始时,Aria2 将解析磁力链接元数据。',
torrentSeeding: 'BT 做种',
seedAfterDownload: '下载完成后继续做种',
seedTime: '做种时间',
minutes: '分钟',
seconds: '秒',
seedRatio: '做种比率',
seedRatioHint: '0 表示仅按时间做种;否则达到第一个限制时停止做种。',
limitTorrentUpload: '限制种子上传',
torrentUploadLimit: '种子上传限速',
torrentSeedTimeInvalid: '做种时间必须大于零',
torrentSeedRatioInvalid: '做种比率不能小于零',
torrentUploadLimitInvalid: '种子上传限速必须大于零',
torrentTrackers: '其他 Torrent Tracker',
torrentTrackersHint: '随该 Torrent 保存,并在下次启动或重试时应用。',
torrentTrackersInvalid: 'Torrent Tracker 列表无效。请使用不含凭据的 HTTP、HTTPS 或 UDP 地址。',
torrentExcludeTrackers: '排除的 Torrent Tracker',
torrentExcludeTrackersHint: '随该 Torrent 保存,并在下次启动或重试时应用。* 会排除所有 announce 地址;不会更改 DHT 和 PEX 设置。',
torrentExcludeTrackersInvalid: '排除的 Torrent Tracker 列表无效。请使用不含凭据的 HTTP、HTTPS 或 UDP 地址,或使用 *。',
torrentVerifyIntegrity: '验证 Torrent 完整性',
torrentVerifyIntegrityHint: '启动或重试时重新检查分片哈希;损坏的分片可能会再次下载。',
torrentMaxPeers: 'Torrent 最大对等节点数',
torrentPeerSpeedLimit: '对等节点速度阈值',
torrentPeerOptionsHint: '留空以使用 Aria2 默认值(55 个节点和 50K)。0 个节点表示不限制。',
torrentMaxPeersInvalid: 'Torrent 最大对等节点数必须是 0 到 1000 之间的整数',
torrentPeerSpeedLimitInvalid: '对等节点速度阈值必须大于零',
torrentStopTimeout: '在此时间后停止无速度 Torrent',
torrentStopTimeoutHint: 'Aria2 会在速度连续为 0 B/s 达到此秒数后停止该 Torrent。0 表示禁用。',
torrentStopTimeoutInvalid: 'Torrent 停止超时必须是 0 到 604800 秒之间的整数',
torrentPrioritizePiece: '优先下载 Torrent 片段',
torrentPrioritizePieceHint: '随 Torrent 保存,并在下次启动或重试时应用。可使用开头、结尾或两者,并可选 K 或 M 大小。',
torrentPrioritizePieceInvalid: 'Torrent 片段优先级必须使用开头和/或结尾,并可选 1K 到 1024M 的大小',
required: '必需',
free: '可用空间',
preview: '预览',
file: '文件',
size: '大小',
status: '状态',
downloadPreview: '下载预览',
noLinks: '尚未添加任何链接。',
selectItem: '选择 {{file}}',
fetchingPlaylist: '正在获取播放列表…',
fetching: '正在获取…',
unsafeUrl: '不安全的 URL',
playlistFailed: '播放列表获取失败',
metadataFailed: '元数据获取失败',
fallback: '备用项',
invalid: '无效',
ready: '就绪',
mediaFormat: '媒体格式',
playlistItem: '播放列表项目 {{index}}',
fetchingMediaStreams: '正在获取媒体流…',
availableStreams: '可用流',
availableMediaStreams: '可用的媒体流',
quality: '画质',
format: '格式',
video: '视频',
audio: '音频',
noCommonFormat: '所选项目没有共同格式。',
noCommonQuality: '所选项目没有共同画质。',
playlistQuality: '播放列表画质',
playlistQualitySelected: '已选择 {{selected}} / {{total}}',
metadataUnavailable: '元数据不可用。在添加此媒体之前,请刷新元数据。',
saveLocation: '保存位置',
browse: '浏览',
categoryFolders: '文件将被组织到类别文件夹中。',
sharedFolder: '所有选定的下载都将使用此文件夹。',
dedicatedFolder: '保存到新文件夹',
dedicatedFolderName: '文件夹名称',
dedicatedFolderDescription: '将在每个自动类别文件夹中创建此文件夹。',
dedicatedFolderManualDescription: '将在选定的保存位置中创建此文件夹。',
saveFolderName: '保存文件夹名称',
dedicatedFolderNameRequired: '保存前请输入文件夹名称。',
transferSettings: '传输设置',
connectionsPerFile: '每个文件的连接数',
connectionsPerFileAria: '每个文件的连接数',
limitSpeedPerFile: '限制每个文件的速度',
speedLimitPerFileAria: '每个文件的速度限制',
authorization: '授权',
useAuthorization: '使用授权',
username: '用户名',
password: '密码',
advancedTransfer: '高级传输',
verifyChecksum: '验证校验和',
checksumAlgorithm: '校验和算法',
expectedDigest: '预期摘要',
headers: '请求头',
requestHeaders: '请求头',
cookies: 'Cookie',
cookiePlaceholder: 'name=value; other=value',
mirrors: '镜像源',
cancel: '取消',
startDownloads: '开始下载',
addToQueue: '添加到队列',
pasteOneOrMore: '粘贴一个或多个链接。',
selectAtLeastOne: '请至少选择一个下载。',
correctInvalidOne: '在继续之前,请更正或移除 {{count}} 个无效的 URL。',
correctInvalidFew: '在继续之前,请更正或移除 {{count}} 个无效的 URL。',
correctInvalidMany: '在继续之前,请更正或移除 {{count}} 个无效的 URL。',
waitingForMetadataOne: '正在等待 {{count}} 个下载的元数据。',
waitingForMetadataFew: '正在等待 {{count}} 个下载的元数据。',
waitingForMetadataMany: '正在等待 {{count}} 个下载的元数据。',
removeUnsafeOne: '在继续之前,请移除 {{count}} 个不安全的 URL。',
removeUnsafeFew: '在继续之前,请移除 {{count}} 个不安全的 URL。',
removeUnsafeMany: '在继续之前,请移除 {{count}} 个不安全的 URL。',
mediaMetadataUnavailableSummaryOne: '{{count}} 个项目的媒体元数据不可用。在添加之前请刷新元数据。',
mediaMetadataUnavailableSummaryFew: '{{count}} 个项目的媒体元数据不可用。在添加之前请刷新元数据。',
mediaMetadataUnavailableSummaryMany: '{{count}} 个项目的媒体元数据不可用。在添加之前请刷新元数据。',
metadataUnavailableFallback: '元数据不可用。下载仍可以使用后备详细信息添加。',
fallbackReadyOne: '{{ready}} 个下载已就绪;{{failed}} 个将使用后备文件名和未知大小。',
fallbackReadyFew: '{{ready}} 个下载已就绪;{{failed}} 个将使用后备文件名和未知大小。',
fallbackReadyMany: '{{ready}} 个下载已就绪;{{failed}} 个将使用后备文件名和未知大小。',
readyToAddOne: '准备添加 {{count}} 个下载。',
readyToAddFew: '准备添加 {{count}} 个下载。',
readyToAddMany: '准备添加 {{count}} 个下载。',
},
settings: {
tabs: {
downloads: '下载',
lookAndFeel: '外观',
network: '网络',
locations: '位置',
siteLogins: '站点登录',
power: '电源',
engine: '引擎',
integrations: '集成',
about: '关于',
},
common: {
thisOs: '此操作系统',
checking: '正在检查…',
ready: '就绪',
errorMissing: '错误 / 缺失',
hideTechnicalDetails: '隐藏技术详细信息',
showTechnicalDetails: '显示技术详细信息',
binary: '二进制文件',
expected: '预期',
error: '错误',
tip: '提示',
stderr: '标准错误',
daemonProcessAlive: '守护进程处于活动状态',
rpcReady: 'RPC 已就绪',
rpcPort: 'RPC 端口',
daemonStderr: '守护进程标准错误',
packaging: '打包:PyInstaller onedir(需要 _internal',
internalDirectoryFound: '找到 _internal 目录',
pythonRuntimeFound: '找到 Python 运行时',
externalOpenFailed: '无法打开 {{label}}{{detail}}',
updateUnexpectedResponse: '更新检查返回了意外的响应。',
updateUntrustedReleaseUrl: '更新检查返回了不受信任的发布版本 URL。',
updateFailed: '更新检查失败:{{detail}}',
},
downloads: {
defaultConnections: '默认连接数:',
defaultConnectionsDescription: '新下载;现有项目保持其保存的值',
parallelDownloads: '并行下载:',
parallelDownloadsDescription: '最大同时活动文件数',
automaticRetries: '自动重试:',
automaticRetriesDescription: '如果连接失败',
systemNotification: '下载完成时显示系统通知',
systemNotificationDescription: '使用操作系统的通知设置',
completionChime: '播放应用内完成提示音',
completionChimeDescription: '可选的 Firelink 声音,独立于系统通知',
clipboardLinks: '当 Firelink 处于活动状态时添加剪贴板链接',
clipboardLinksDescription: '在“添加”窗口中打开支持的已复制链接。默认关闭。',
},
lookAndFeel: {
language: '语言',
languageAndRegion: '语言和地区',
layout: '布局',
languageDescription: '选择 Firelink 的界面语言。',
sidebarPosition: '侧边栏位置',
sidebarPositionDescription: '选择侧边栏显示的位置。“自动”会跟随界面文字方向。',
sidebarPositionAutomatic: '自动(推荐)',
sidebarPositionLeft: '左侧',
sidebarPositionRight: '右侧',
windowControls: '窗口控件',
windowControlStyle: '控件样式',
windowControlsDescription: '选择 Firelink 绘制自定义窗口按钮的方式。“自动”会跟随操作系统。',
windowControlStyleAutomatic: '自动(推荐)',
windowControlStyleMacos: 'macOS 交通灯',
windowControlStyleWindows: 'Windows 11 Fluent',
windowControlStyleGnome: 'GNOME / Adwaita',
windowControlStyleMinimal: '极简',
languageSystem: '系统默认',
languageEnglish: '英语',
languageChinese: '简体中文',
languageHebrew: '希伯来语',
languagePersian: '波斯语',
languageUkrainian: '乌克兰语',
languageRussian: '俄语',
calendar: '日历',
calendarDescription: '选择显示日期和时间所使用的日历。默认使用公历;此选择不会改变计划或已保存的时间戳。',
calendarGregorian: '公历',
calendarPersian: '波斯历',
calendarHebrew: '希伯来历',
appTheme: '应用主题',
theme: '主题',
ariaLabel: '应用主题',
system: '系统',
light: '浅色',
dark: '深色',
dracula: 'Dracula',
nord: 'Nord',
systemAppearance: '系统跟随当前的 {{platform}} 浅色或深色外观。',
display: '显示',
fontFamily: '字体',
fontFamilyDescription: '选择界面字体。“系统”会使用适合操作系统和语言的系统字体及备用字体。',
fontFamilySystem: 'System UI (recommended)',
fontFamilyInter: 'Inter',
fontFamilyOutfit: 'Outfit',
fontFamilyVazirmatn: 'Vazirmatn',
fontFamilyNotoSansHebrew: 'Noto Sans Hebrew',
fontFamilyNotoSansSc: 'Noto Sans SC',
fontFamilyRoboto: 'Roboto',
fontFamilySerif: 'Serif',
fontFamilyMonospace: 'Monospace',
fontSize: '字体大小',
fontSizeDescription: '缩放下载列表和紧凑型控件。',
small: '小',
standard: '标准',
large: '大',
listDensity: '列表密度',
listDensityDescription: '更改行高、间距和进度条的缩放。',
compact: '紧凑',
comfortable: '舒适',
relaxed: '宽松',
osIntegration: '系统集成',
dockBadge: '在 Dock 图标上显示角标',
dockBadgeDescription: '在 Firelink 的 Dock 图标上显示活动下载计数。',
menuBarIcon: '显示菜单栏图标',
statusIndicatorIcon: '显示状态指示器图标',
systemTrayIcon: '显示系统托盘图标',
macosTrayDescription: '提供从 macOS 菜单栏的快速访问。',
windowsTrayDescription: '提供从 Windows 通知区域的快速访问。',
linuxTrayDescription: '在可用时,提供从桌面托盘或状态区域的快速访问。',
defaultTrayDescription: '在可用时,提供从操作系统托盘区域的快速访问。',
},
network: {
proxy: '代理',
mode: '模式',
modeDescription: '控制新下载请求的代理使用。',
noProxy: '无代理',
systemProxy: '系统代理',
customProxy: '自定义代理',
proxyHost: '代理主机',
proxyHostDescription: '主机名、IP 地址或 HTTP 代理 URL。',
proxyHostPlaceholder: '127.0.0.1 或 http://127.0.0.1',
proxyPort: '代理端口',
proxyPortDescription: '有效范围是 1 到 65535。',
noProxyDescription: '下载忽略已配置的代理。',
systemProxyDescription: '下载使用检测到的 {{platform}} 系统代理。普通文件下载需要 HTTP 或 HTTPS 代理端点;媒体下载可以使用 SOCKS。',
customProxyDescription: '下载使用配置的 HTTP 代理端点来获取元数据和进行引擎下载。',
invalidCustomProxy: '输入有效的 HTTP 代理主机和端口以启用自定义代理。',
incompleteCustomProxy: '输入代理主机和端口以启用自定义代理。',
checkingSystemProxy: '正在检查系统代理配置…',
detectedSystemProxy: '检测到系统代理。普通文件下载需要 HTTP 或 HTTPS 端点;媒体下载可以使用 SOCKS。',
noSystemProxy: '未检测到可用的系统代理。下载将不使用代理。',
systemProxyReadFailed: '无法读取系统代理配置。请选择“无代理”,或者在其可用时重试。',
torrentPeerDiscovery: 'BitTorrent 对等节点发现',
torrentDht: 'IPv4 DHT 与 UDP Tracker',
torrentDhtDescription: '不只依赖 Tracker 查找节点。关闭后也会禁用 UDP Tracker 支持。',
torrentDht6: 'IPv6 分布式哈希表',
torrentDht6Description: '当网络提供可用的 IPv6 路径时,使用 IPv6 进行分布式节点发现。',
torrentPex: '节点交换(PEX',
torrentPexDescription: '允许已连接的节点共享其他节点的地址。',
torrentLpd: '本地节点发现(LPD',
torrentLpdDescription: '在本地网络中发现兼容节点,这会增加本地网络中的流量可见性。',
torrentPeerDiscoveryRestartNote: '这些选项是 Aria2 的全局设置,需要重启 Firelink 后生效。Aria2 仍会对私有 Torrent 禁用节点发现。',
identity: '身份',
customUserAgent: '自定义 User-Agent',
userAgentDescription: '应用于元数据获取和下载引擎。',
userAgentPlaceholder: '留空以使用 Firelink 默认值',
userAgentOverrides: '覆盖传出的 User-Agent 请求头。留空以使用 Firelink 默认值。',
chromeWindows: 'Chrome (Windows)',
chromeMacos: 'Chrome (macOS)',
edgeWindows: 'Edge (Windows)',
firefoxWindows: 'Firefox (Windows)',
firefoxMacos: 'Firefox (macOS)',
safariMacos: 'Safari (macOS)',
windowsDesktop: 'Windows 桌面',
macosDesktop: 'macOS 桌面',
},
locations: {
baseDownloadFolder: '基本下载文件夹',
baseDownloadFolderDescription: '在此文件夹中创建自动类别文件夹。',
browse: '浏览',
baseFolderCreateFailed: '基本文件夹已保存,但无法创建类别文件夹:{{detail}}',
baseFolderUpdated: '基本下载文件夹已更新',
askWhereToSave: '在添加下载时询问保存位置',
rememberLastUsedDownloadDirectory: '记住上次使用的下载目录',
rememberLastUsedDownloadDirectoryDescription: '在下一次下载时,使用在“添加”窗口中最后选择的文件夹,直到应用程序重启。',
automaticCategorySubfolders: '自动将文件保存到类别子文件夹',
automaticCategorySubfoldersDescription: '关闭时,自动下载使用基本文件夹。',
categorySubfolders: '类别子文件夹',
relativeToBase: '相对于基本文件夹',
disabled: '已禁用',
categorySubfolder: '{{category}}子文件夹',
customFolder: '自定义文件夹',
useAutomatic: '使用自动',
resetDefaults: '重置为默认值',
resetToast: '已将类别位置重置为默认值',
},
siteLogins: {
title: '站点凭据',
noSavedLogins: '没有保存的登录信息。',
user: '用户:{{username}}',
deleteCredential: '删除凭据',
deletedCredential: '已删除凭据',
deleteFailed: '无法删除凭据:{{detail}}',
addTitle: '添加站点凭据',
urlPattern: 'URL 模式:',
urlPatternPlaceholder: '例如:*.example.com 或 example.com/downloads',
username: '用户名:',
password: '密码:',
usernamePlaceholder: '用户名',
passwordPlaceholder: '密码',
saving: '正在保存…',
addLogin: '添加登录',
urlPatternRequired: 'URL 模式是必需的。',
urlPatternWhitespace: 'URL 模式不能包含空格。',
usernameRequired: '用户名是必需的。',
passwordRequired: '密码是必需的。',
accessBeforeSave: '在保存站点登录之前,请授予凭据存储访问权限。',
saveFailed: '无法安全地保存站点凭据。',
addedCredential: '已添加站点凭据',
},
power: {
title: '电源管理',
preventSleep: '下载活动时阻止系统睡眠',
preventSleepDescription: '显示器可能仍会关闭。Firelink 仅保持设备唤醒足以完成活动的传输。',
preventDisplaySleep: '下载活动时保持显示器唤醒',
preventDisplaySleepDescription: '这是与阻止系统睡眠分开的可选设置。活动传输完成前,显示器将保持开启。',
},
engine: {
title: '媒体下载器和引擎',
description: '成功的结果将在此应用会话中重用。重新检查将再次运行真正的验证。',
recheck: '重新检查引擎',
coreDownloader: '核心下载器 (aria2)',
version: '版本:',
status: '状态:',
mediaExtractors: '媒体提取器',
browserCookiesSource: '浏览器 Cookies 来源:',
cookieDescription: 'yt-dlp 读取浏览器 cookies 以绕过视频下载限制或访问受限媒体。Firelink 不会保存浏览器 cookies。',
none: '无',
},
integrations: {
title: '连接浏览器扩展',
description: '通过三个简单的步骤直接从浏览器捕获下载。',
portablePairingEnabled: '便携配对已启用',
pairingTokenPersisted: '配对令牌已持久化',
portablePersistedDescription: '您的配对令牌与此便携式 Firelink 文件夹一起存储,并在文件夹移动时保留。请将该文件夹视为敏感内容。',
systemPersistedDescription: '您的配对令牌已存储在系统凭据存储中,并在重启后保留。',
portablePairingAvailable: '便携配对可用',
credentialStorageNeeded: '需要凭据存储',
portableAvailableDescription: '您的配对令牌与此便携式 Firelink 文件夹一起存储,并在重启后保留。在此处启用它以查看便携存储警告。',
credentialStorageDescription: 'Firelink 需要访问此系统的凭据存储以在应用重启时安全地保存您的配对令牌。目前,您的扩展仅在此会话中保持连接。',
reviewPortablePairing: '查看便携配对',
grantCredentialAccess: '授予凭据访问权限',
copyToken: '复制令牌',
tokenDescription: '此安全令牌用于授权您的浏览器扩展。',
tokenCopied: '令牌已复制到剪贴板!',
tokenCopyFailed: '无法复制令牌:{{detail}}',
pairingTokenRegenerated: '配对令牌已重新生成',
regenerateFailed: '无法重新生成配对令牌:{{detail}}',
getExtension: '获取扩展',
extensionDescription: '安装适用于 Firefox 或 Chromium 浏览器的 Firelink Companion。',
firefoxAddons: 'Firefox 附加组件',
chromiumZip: 'Chromium ZIP',
pasteConnect: '粘贴并连接',
pasteConnectDescription: '点击浏览器工具栏中的 Firelink 图标,然后粘贴复制的令牌。',
extensionServerStatus: '扩展服务器状态:',
listening: '● 正在 127.0.0.1:{{port}} 监听',
unavailable: '● 服务器不可用',
},
about: {
firelinkIcon: 'Firelink 图标',
unknown: '未知',
version: '版本 {{version}}',
description: '适用于 macOS、Windows 和 Linux 的跨平台下载管理器。',
sourceCode: '源代码',
source: '源码',
upToDate: 'Firelink {{version}} 已是最新版本。',
updateAvailable: 'Firelink {{version}} 可用。',
viewRelease: '查看发布版本',
updates: '更新',
checkForUpdates: '检查更新',
updateDescription: 'Firelink 会在 GitHub Releases 检查新版本。',
checking: '正在检查…',
checkNow: '立即检查',
automaticUpdates: '自动检查更新',
createdBy: '由 NimBold 创建',
mitLicense: 'MIT 许可证',
credits: '致谢:aria2、yt-dlp、FFmpeg 和 Deno。',
copyright: '版权所有 © 2026 NimBold。保留所有权利。',
},
},
status: {
ready: '就绪',
active: '{{count}} 个进行中',
queued: '{{count}} 个排队',
done: '{{count}} 个完成',
seeding: '做种',
},
} as const;
export default zhCN;