export default { common: { confirm: '确认', cancel: '取消', save: '保存', close: '关闭', version: '版本', author: '作者', delete: '删除', edit: '编辑', add: '添加', search: '搜索', loading: '加载中', success: '成功', error: '错误', openInNewWindow: '在新窗口中打开', inputMessage: '输入消息或命令', send: '发送', noData: '暂无数据', noContent: '没有找到相关内容', all: '全部', active: '激活', inactive: '未激活', filter: '筛选', noMatchingData: '没有符合条件的数据', tryChangingFilters: '请尝试更改筛选条件', default: '默认', name: '名称', create: '新建', saving: '保存中', reset: '重置', theme: '主题', uiMode: '界面布局', language: '语言', pleaseWait: '请稍候...', viewDetails: '查看详情', user: '用户', config: '配置', pause: '暂停', enable: '启用', confirmAction: '确认{action}', details: '详情', files: '文件', share: '分享', subscribe: '订阅', unsubscribe: '取消订阅', media: '媒体', unknown: '未知', notice: '注意', itemsPerPage: '每页条数', pageText: '{0}-{1} 共 {2} 条', noDataText: '没有数据', next: '下一步', previous: '上一步', skip: '跳过', loadingText: '加载中...', networkRequired: '此功能需要网络连接', networkDisconnected: '网络连接已断开', featuresLimited: '部分功能可能受限', serverConnectionFailed: '服务器连接失败', troubleshooting: '疑难解答', checking: '检查中', retry: '重试', networkOnline: '网络在线', networkOffline: '网络离线', serviceAvailable: '服务可用', serviceUnavailable: '服务不可用', status: '状态', preset: '预设', refresh: '刷新', swUpdateReady: '新版本已就绪,请刷新页面以获取最新功能', ascending: '升序', descending: '降序', versionMismatch: '浏览器缓存版本与服务端版本不一致,请尝试清除缓存', clearCache: '清除缓存', }, mediaType: { movie: '电影', tv: '电视剧', anime: '动漫', collection: '合集', unknown: '未知', }, notificationSwitch: { resourceDownload: '资源下载', organize: '整理入库', subscribe: '订阅', site: '站点', mediaServer: '媒体服务器', manual: '手动处理', plugin: '插件', other: '其它', }, actionStep: { addDownload: '添加下载', addSubscribe: '添加订阅', fetchDownloads: '获取下载任务', fetchMedias: '获取媒体', fetchRss: '获取RSS资源', fetchTorrents: '获取站点资源', filterMedias: '过滤媒体', filterTorrents: '过滤资源', scanFile: '扫描目录', scrapeFile: '刮削文件', sendEvent: '发送事件', sendMessage: '发送消息', transferFile: '整理文件', invokePlugin: '调用插件', note: '备注', }, qualityOptions: { all: '全部', blurayOriginal: '蓝光原盘', remux: 'Remux', bluray: 'BluRay', uhd: 'UHD', webdl: 'WEB-DL', hdtv: 'HDTV', h265: 'H265', h264: 'H264', }, resolutionOptions: { all: '全部', '4k': '4k', '1080p': '1080p', '720p': '720p', }, effectOptions: { all: '全部', dolbyVision: '杜比视界', dolbyAtmos: '杜比全景声', hdr: 'HDR', sdr: 'SDR', }, theme: { light: '浅色', dark: '深色', auto: '跟随系统', autoUI: '自动', transparent: '透明', purple: '幻紫', custom: '附加样式', transparency: '透明度', transparencyAdjust: '透明度调整', transparencyOpacity: '透明度', transparencyBlur: '模糊度', transparencyReset: '重置', transparencyLow: '低透明度', transparencyMedium: '中等透明度', transparencyHigh: '高透明度', customCssSaveSuccess: '自定义CSS保存成功,请刷新页面生效!', customCssSaveFailed: '保存自定义CSS到服务端失败', deviceNotSupport: '当前设备不支持监听系统主题变化', }, app: { moviepilot: 'MoviePilot', slogan: '智能影视媒体库管理工具', recommend: '推荐', subscribeMovie: '电影订阅', subscribeTv: '电视剧订阅', settings: '设置', selectLanguage: '选择语言', logout: '退出登录', restarting: '正在重启...', confirmRestart: '确认重启系统吗?', restartTip: '重启后,您将被注销并需要重新登录。', restartTimeout: '重启超时,系统可能需要更长时间恢复,请稍后手动刷新页面', restartFailed: '重启失败,请检查系统状态', offline: '应用已离线', offlineMessage: '网络连接已断开,部分功能可能受限', online: '应用在线', onlineMessage: '网络连接已恢复', }, pwa: { installApp: '安装 MoviePilot 应用', installDescription: '获得更好的离线体验和性能', install: '安装', installSuccess: '应用安装成功!', installGuide: '安装指南', installInstructions: '在 {platform} 上安装 MoviePilot:', installNote: '安装后,您可以从主屏幕快速访问 MoviePilot,并享受离线功能。', gotIt: '知道了', // 平台特定的说明 platforms: { ios: 'iOS', android: 'Android', chrome: 'Chrome', edge: 'Edge', firefox: 'Firefox', safari: 'Safari', desktop: '桌面设备', mobile: '移动设备', other: '其他浏览器', }, // 安装步骤 installSteps: { ios: { 0: '点击浏览器底部的分享按钮', 1: '选择"添加到主屏幕"', 2: '点击"添加"确认安装', }, android: { 0: '点击浏览器菜单(三个点)', 1: '选择"添加到主屏幕"或"安装应用"', 2: '点击"安装"确认', }, chrome: { 0: '点击地址栏右侧的安装图标', 1: '或者点击浏览器菜单中的"安装 MoviePilot"', 2: '点击"安装"确认', }, edge: { 0: '点击地址栏右侧的"应用可用"图标', 1: '在弹出的面板中点击"安装"按钮', 2: '在确认对话框中点击"安装"', }, firefox: { 0: '点击地址栏右侧的安装图标', 1: '选择"安装"', 2: '确认安装到桌面', }, safari: { 0: '点击分享按钮', 1: '选择"添加到主屏幕"', 2: '点击"添加"确认', }, desktop: { 0: '点击地址栏右侧的安装图标', 1: '选择"安装应用"', 2: '按照提示完成安装', }, mobile: { 0: '点击浏览器菜单', 1: '选择"添加到主屏幕"', 2: '确认安装', }, other: { 0: '查找浏览器中的"安装"选项', 1: '通常在地址栏或菜单中', 2: '按照提示完成安装', }, }, }, login: { wallpapers: '壁纸', username: '用户名', password: '密码', otpCode: '验证码', stayLoggedIn: '保持登录', login: '登录', networkError: '登录失败,请检查网络连接!', authFailure: '登录失败,请检查用户名、密码或二次验证是否正确!', permissionDenied: '登录失败,您没有权限访问!', noPermission: '登录失败,您没有任何功能权限,请联系管理员!', serverError: '登录失败,服务器错误!', loginFailed: '登录失败', secondaryVerification: '二次验证', loginWithPasskey: '使用通行密钥登录', loginWithOtp: '使用验证码登录', orUsePasskey: '或使用通行密钥进行验证', verifyWithPasskey: '使用通行密钥验证', otpPlaceholder: '请输入6位验证码', passkeyLoginStartFailed: '启动通行密钥认证失败', passkeyNotSelected: '未选择通行密钥', passkeyLoginFailed: '通行密钥登录失败', passkeyAuthCanceled: '通行密钥认证被取消', passkeyNotSupported: '当前浏览器不支持通行密钥', passkeySecureContextRequired: '通行密钥需要 HTTPS 安全连接', passkeyVerifyFailed: '通行密钥验证失败', passkeyVerifyFailedRetry: '通行密钥验证失败,请重试', mfa: { selectVerificationMethod: '请选择验证方式', }, }, menu: { start: '开始', discovery: '发现', subscribe: '订阅', organize: '整理', system: '系统', }, navItems: { dashboard: '仪表盘', mediaInfo: '媒体库', recommend: '推荐', site: '站点', search: '搜索', searchResult: '搜索结果', download: '下载', movieSubscribe: '电影订阅', tvSubscribe: '电视剧订阅', history: '历史记录', transfer: '整理', rename: '重命名', statistic: '统计', setting: '设置', plugin: '插件', user: '用户', about: '关于', explore: '探索', movie: '电影', tv: '电视剧', workflow: '工作流', calendar: '日历', downloadManager: '下载管理', mediaOrganize: '媒体整理', fileManager: '文件管理', pluginManager: '插件', siteManager: '站点管理', userManager: '用户管理', settings: '设定', }, settingTabs: { system: { title: '系统', description: '基础设置、下载器(Qbittorrent、Transmission)、媒体服务器(Emby、Jellyfin、Plex)', }, directory: { title: '存储 & 目录', description: '下载目录、媒体库目录、整理、刮削', }, site: { title: '站点', description: '站点同步、站点数据刷新、站点重置', }, rule: { title: '规则', description: '自定义规则、优先级规则组、下载规则', }, search: { title: '搜索 & 下载', description: '搜索数据源(TheMovieDb、豆瓣、Bangumi)、下载任务标签、搜索站点', }, subscribe: { title: '订阅', description: '订阅站点、订阅模式、订阅规则、洗版规则', }, scheduler: { title: '服务', description: '定时作业', }, cache: { title: '缓存', description: '种子缓存、图片文件缓存管理', }, notification: { title: '通知', description: '通知渠道(微信、Telegram、Slack、SynologyChat、VoceChat、WebPush)、消息发送范围', }, about: { title: '关于', description: '软件版本', }, }, subscribeTabs: { movie: { mysub: '我的订阅', popular: '热门订阅', }, tv: { mysub: '我的订阅', popular: '热门订阅', share: '订阅分享', }, }, workflowTabs: { list: '我的工作流', share: '工作流分享', }, pluginTabs: { installed: '我的插件', market: '插件市场', }, discoverTabs: { themoviedb: 'TheMovieDb', douban: '豆瓣', bangumi: 'Bangumi', }, user: { admin: '管理员', normal: '普通用户', active: '激活', inactive: '已停用', noEmail: '未设置邮箱', movieSubscriptions: '电影订阅', tvSubscriptions: '剧集订阅', cannotDeleteCurrentUser: '不能删除当前登录用户!', confirmDeleteUser: '删除用户 {username} 的所有数据,是否确认?', deleteSuccess: '用户删除成功', deleteFailed: '用户删除失败!', profile: '个人信息', systemSettings: '系统设定', wizardSettings: '设置向导', siteAuth: '用户认证', helpDocs: '帮助文档', about: '关于', restart: '重启', management: '用户管理', noUsers: '没有用户', clickToAddUser: '点击添加用户卡片添加用户', addUser: '添加用户', editUser: '编辑用户', username: '用户名', usernameHint: '用于登录系统的用户名', password: '密码', passwordHint: '请输入登录密码', confirmPassword: '确认密码', confirmPasswordHint: '请再次输入密码以确认', role: '角色', email: '邮箱', enabled: '启用', disabled: '禁用', status: '状态', operations: '操作', }, nav: { more: '更多', }, notification: { center: '通知中心', markRead: '设为已读', empty: '暂无通知', channel: '通知渠道', name: '名称', nameHint: '通知渠道名称', type: '类型', typeHint: '通知渠道类型', customTypeHint: '自定义通知类型,用于插件实现场景', customTypePlaceholder: 'custom', nameRequired: '请输入名称', enabled: '启用', config: '配置', wechat: { name: '企业微信', corpId: '企业ID', corpIdHint: '企业微信后台企业信息中的企业ID', corpIdRequired: '企业ID不能为空', appId: '应用 AgentId', appIdHint: '企业微信自建应用的AgentId', appIdRequired: '应用AgentId不能为空', appSecret: '应用 Secret', appSecretHint: '企业微信自建应用的Secret', appSecretRequired: '应用Secret不能为空', proxy: '代理地址', proxyHint: '微信消息的转发代理地址,2022年6月20日后创建的自建应用才需要,不使用代理时需要保留默认值', token: 'Token', tokenHint: '微信企业自建应用->API接收消息配置中的Token', encodingAesKey: 'EncodingAESKey', encodingAesKeyHint: '微信企业自建应用->API接收消息配置中的EncodingAESKey', admins: '管理员白名单', adminsHint: '可使用管理菜单及命令的用户ID列表,多个ID使用,分隔', adminsPlaceholder: '用户ID列表,多个ID使用,分隔', }, telegram: { name: 'Telegram', token: 'Bot Token', tokenHint: 'Telegram机器人token,格式:123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11', tokenRequired: 'Bot Token不能为空', chatId: 'Chat ID', chatIdHint: '接受消息通知的用户、群组或频道Chat ID', chatIdRequired: 'Chat ID不能为空', users: '用户白名单', usersHint: '可使用Telegram机器人的用户ID清单,多个用户用,分隔,不填写则所有用户都能使用', admins: '管理员白名单', adminsHint: '可使用管理菜单及命令的用户ID列表,多个ID使用,分隔', adminsPlaceholder: '用户ID列表,多个ID使用,分隔', usersPlaceholder: '用户ID列表,多个ID使用,分隔', apiUrl: '代理API地址', apiUrlHint: '自定义代理API地址,格式:https://api.telegram.org', apiUrlPlaceholder: 'https://api.telegram.org', }, slack: { name: 'Slack', oauthToken: 'Slack Bot User OAuth Token', oauthTokenHint: 'Slack应用`OAuth & Permissions`页面中的`Bot User OAuth Token`', oauthTokenRequired: 'OAuth Token不能为空', appToken: 'Slack App-Level Token', appTokenHint: 'Slack应用`OAuth & Permissions`页面中的`App-Level Token`', channel: '频道名称', channelHint: '消息发送频道,默认`全体`', channelRequired: '频道名称不能为空', }, discord: { name: 'Discord', botToken: 'Bot Token', botTokenHint: 'Discord Bot Token(需在开发者后台开启 Message Content Intent)', botTokenRequired: 'Bot Token不能为空', guildId: '服务器 ID', guildIdHint: '可选,限制使用的服务器;为空则使用已加入的任意服务器', guildIdPlaceholder: '123456789012345678', channelId: '频道 ID', channelIdHint: '可选,默认广播频道;为空则自动选择可发送消息的频道', channelIdPlaceholder: '123456789012345678', }, synologychat: { name: 'Synology Chat', webhook: '机器人传入URL', webhookHint: 'Synology Chat机器人传入URL', webhookRequired: 'Webhook URL不能为空', token: '令牌', tokenHint: 'Synology Chat机器人令牌', }, vocechat: { name: 'VoceChat', host: '地址', hostHint: 'VoceChat服务端地址,格式:http(s)://ip:port', hostRequired: '地址不能为空', apiKey: '机器人密钥', apiKeyHint: 'VoceChat机器人密钥', apiKeyRequired: 'API密钥不能为空', channelId: '频道ID', channelIdHint: 'VoceChat的频道ID,不包含#号', }, webpush: { name: 'WebPush', username: '登录用户名', usernameHint: '只有对应的用户登录后才会推送消息', usernameRequired: '用户名不能为空', }, }, shortcut: { title: '捷径', recognition: { title: '识别', subtitle: '名称识别测试', }, rule: { title: '规则', subtitle: '规则测试', }, log: { title: '日志', subtitle: '实时日志', }, network: { title: '网络', subtitle: '网速连通性测试', }, system: { title: '系统', subtitle: '健康检查', }, message: { title: '消息', subtitle: '消息中心', }, words: { title: '词表', subtitle: '词表设置', }, cache: { title: '缓存', subtitle: '管理缓存', }, }, workflow: { components: '动作组件', clickToAdd: '点击添加', dragToCanvas: '拖动到画布', tapComponentHint: '点击组件添加到画布', dragComponentHint: '拖动组件到画布', task: { edit: '编辑任务', editFlow: '编辑流程', share: '分享', continue: '继续执行', restart: '重新执行', run: '立即执行', reset: '重置任务', delete: '删除任务', confirmDelete: '是否确认删除任务 {name} ?', confirmReset: '是否确认重置任务 {name} ?', deleteSuccess: '删除任务成功!', deleteFailed: '删除任务失败:{message}', enableSuccess: '启用任务成功!', enableFailed: '启用任务失败:{message}', pauseSuccess: '停用任务成功!', pauseFailed: '停用任务失败:{message}', runSuccess: '任务执行完成!', runFailed: '任务执行失败:{message}', resetSuccess: '重置任务成功!', resetFailed: '重置任务失败:{message}', status: { success: '成功', running: '运行中', failed: '失败', paused: '暂停', waiting: '等待', }, info: { trigger: '触发方式', timer: '定时', status: '状态', actionCount: '动作数', runCount: '已执行次数', progress: '进度', error: '错误信息', manualTrigger: '手动', }, }, scanFile: { title: '扫描目录', subtitle: '扫描目录文件到队列', storage: '存储', directory: '目录', }, addDownload: { title: '添加下载', subtitle: '添加资源到下载器', downloader: '下载器', category: '分类', savePath: '保存路径', sequential: '顺序下载', forceResume: '强制继续', firstLastPiece: '优先首尾文件', onlyLack: '仅下载缺失资源', categoryPlaceholder: '多个使用,分隔', savePathPlaceholder: '留空自动', }, addSubscribe: { title: '添加订阅', subtitle: '添加资源到订阅', type: '类型', name: '名称', season: '季', episode: '集', }, fetchMedias: { title: '获取媒体', subtitle: '从媒体服务器获取媒体信息', source: '数据源', searchType: '搜索类型', type: '类型', name: '名称', year: '年份', ranking: '榜单', api: '插件API', apiPath: 'API路径', selectRanking: '选择榜单', tmdbTrending: 'TMDB 流行趋势', doubanShowing: '豆瓣正在热映', bangumiCalendar: 'Bangumi 每日放送', tmdbMovies: 'TMDB 热门电影', tmdbTvs: 'TMDB 热门电视剧', doubanMovieHot: '豆瓣热门电影', doubanTvHot: '豆瓣热门电视剧', doubanTvAnimation: '豆瓣热门动漫', doubanMovies: '豆瓣最新电影', doubanTvs: '豆瓣最新电视剧', doubanMovieTop250: '豆瓣电影TOP250', doubanTvWeeklyChinese: '豆瓣国产剧集榜', doubanTvWeeklyGlobal: '豆瓣全球剧集榜', }, filterMedias: { title: '过滤媒体', subtitle: '根据条件过滤媒体', type: '类型', name: '名称', year: '年份', vote: '评分', }, scrapeFile: { title: '刮削文件', subtitle: '刮削文件元数据', }, sendEvent: { title: '发送事件', subtitle: '发送系统事件', }, fetchDownloads: { title: '获取下载', subtitle: '获取下载器任务', loop: '循环执行', loopInterval: '循环间隔', }, fetchRss: { title: '获取RSS', subtitle: '获取RSS订阅', url: 'URL', userAgent: 'User-Agent', timeout: '超时时间', matchMedia: '匹配媒体数据', useProxy: '使用代理', }, fetchTorrents: { title: '获取站点资源', subtitle: '获取站点种子列表', searchType: '搜索类型', searchOptions: { name: '名称', mediaList: '媒体列表', }, name: '名称', year: '年份', type: '类型', season: '季', sites: '站点', matchMedia: '匹配媒体数据', }, sendMessage: { title: '发送消息', subtitle: '发送系统消息', channel: '渠道', userId: '用户ID', }, transferFile: { title: '传输文件', subtitle: '传输文件到目标目录', source: '源目录', sourceOptions: { fileList: '文件列表', downloads: '下载列表', }, }, filterTorrents: { title: '过滤资源', subtitle: '对资源列表数据进行过滤', quality: '质量', resolution: '分辨率', effect: '特效', size: '大小范围', include: '包含(关键字、正则式)', exclude: '排除(关键字、正则式)', ruleGroups: '过滤规则组', }, invokePlugin: { title: '调用插件', subtitle: '调用插件执行特定操作', plugin: '插件', actionid: '动作ID', actionParams: '动作参数', loadPluginSettingFailed: '加载插件设置失败', }, note: { title: '备注', subtitle: '添加流程说明注释', content: '备注内容', placeholder: '请输入备注内容...', }, title: '工作流', share: '工作流分享', searchShares: '搜索工作流分享', noShareData: '暂无分享的工作流', sharer: '分享人', trigger: '触发方式', timer: '定时器', manualTrigger: '手动触发', actionCount: '动作数量', normalFork: '复用工作流', cancelShare: '取消分享', cancelSuccess: '取消分享成功', cancelFailed: '取消分享失败:{message}', usageCount: '复用 {count} 次', addSuccess: '复用 {name} 成功!', addFailed: '复用 {name} 失败:{message}', noWorkflow: '没有工作流', noWorkflowDescription: '点击添加按钮创建工作流任务。', }, dashboard: { storage: '存储空间', mediaStatistic: '媒体统计', weeklyOverview: '最近入库', realTimeSpeed: '实时速率', scheduler: '后台任务', cpu: 'CPU', memory: '内存', network: '网络流量', upload: '上行', download: '下行', library: '我的媒体库', playing: '继续观看', latest: '最近添加', settings: '设置仪表板', chooseContent: '选择您想在页面显示的内容', adaptiveHeight: '自适应组件高度', current: '当前', episodes: '剧集', users: '用户', noSchedulers: '没有后台服务', weeklyOverviewDescription: '最近一周入库了 {count} 部影片', speed: { totalUpload: '总上传量', totalDownload: '总下载量', freeSpace: '磁盘剩余空间', }, processes: { title: '系统进程', pid: '进程ID', name: '进程名称', runtime: '运行时间', memory: '内存占用', }, errors: { loadMediaServer: '加载媒体服务器设置失败:', loadLatest: '加载媒体服务器 "{server}" 的最近入库失败:', }, }, media: { status: { inLibrary: '已入库', missing: '缺失', partiallyMissing: '部分缺失', subscribed: '已订阅', }, minutes: '分钟', overview: '简介', seasons: '季', seasonNumber: '第 {number} 季', episodeCount: '{count}集', actions: { searchResource: '搜索资源', subscribe: '订阅', playOnline: '在线播放', playInApp: 'APP播放', playInWeb: '网页播放', }, search: { byTitle: '标题', byImdb: 'IMDB链接', }, info: { originalTitle: '原始标题', status: '状态', releaseDate: '上映日期', digitalRelease: '数字发行', physicalRelease: '实体发行', originalLanguage: '原始语言', productionCountries: '出品国家', productionCompanies: '制作公司', doubanId: '豆瓣ID', }, subscribe: { normal: '订阅', bestVersion: '洗版订阅', addFailed: '添加订阅失败:{reason}!', canceled: '已取消订阅!', cancelFailed: '取消订阅失败:{reason}!', }, castAndCrew: '演员阵容', recommendations: '推荐', similar: '类似', error: { title: '出错啦!', noMediaInfo: '未识别到媒体信息。', }, server: { plex: 'Plex', jellyfin: 'Jellyfin', emby: 'Emby', appLaunchFailed: 'APP启动失败,正在跳转到网页版', appNotInstalled: '未检测到APP,正在跳转到网页版', downloadApp: '下载APP', }, }, subscribe: { normalSub: '订阅', versionSub: '洗版订阅', addSuccess: '添加{name}成功!', addFailed: '添加{name}失败:{message}!', cancelSuccess: '已取消订阅!', cancelFailed: '取消订阅失败:{message}!', filterSubscriptions: '筛选订阅', name: '名称', searchShares: '搜索订阅分享', keyword: '关键词', noShareData: '未获取到分享订阅数据,未开启数据分享或服务器无法连接。', noPopularData: '未获取到热门订阅数据,未开启数据分享或服务器无法连接。', noFilterData: '没有筛选到相关内容,请更换筛选条件。', noSubscribeData: '请通过搜索添加电影、电视剧订阅。', sharer: '分享人', follow: '关注', unfollow: '取消关注', recognitionWords: '识别词', cancelShare: '取消分享', usageCount: '共 {count} 次复用', confirmToggle: '是否{action}订阅 {name}?', toggleSuccess: '{name} 已{action}!', toggleFailed: '{action}失败:{message}', resetConfirm: '重置后 {name} 将恢复初始状态,已下载记录将被清除,未入库的内容将会重新下载,是否确认?', resetSuccess: '{name} 重置成功!', resetFailed: '{name} 重置失败:{message}', shareStatistics: '分享统计', shareCount: '个分享', totalReuseCount: '次复用', ranking: '排名', noStatisticsData: '暂无分享统计数据', bestVersion: '洗版中', completed: '订阅完成', subscribing: '订阅中', notStarted: '未开始', pending: '待定', paused: '暂停', selectedCount: '已选择 {count}/{total} 项', noSelectedItems: '请先选择要操作的订阅', batchEnable: '批量启用', batchPause: '批量暂停', batchDelete: '批量删除', batchEnableConfirm: '确定要启用选中的 {count} 个订阅吗?', batchPauseConfirm: '确定要暂停选中的 {count} 个订阅吗?', batchDeleteConfirm: '确定要删除选中的 {count} 个订阅吗?此操作不可恢复!', batchEnableSuccess: '成功启用 {count} 个订阅', batchPauseSuccess: '成功暂停 {count} 个订阅', batchDeleteSuccess: '成功删除 {count} 个订阅', batchEnableFailed: '启用失败 {count} 个订阅', batchPauseFailed: '暂停失败 {count} 个订阅', batchDeleteFailed: '删除失败 {count} 个订阅', batchEnableError: '批量启用操作失败', batchPauseError: '批量暂停操作失败', batchDeleteError: '批量删除操作失败', minSubscribers: '最小订阅人数', }, recommend: { all: '全部', categoryMovie: '电影', categoryTV: '电视剧', categoryAnime: '动漫', categoryRankings: '榜单', trendingNow: '流行趋势', nowShowing: '正在热映', bangumiDaily: 'Bangumi每日放送', tmdbHotMovies: 'TMDB热门电影', tmdbHotTVShows: 'TMDB热门电视剧', doubanHotMovies: '豆瓣热门电影', doubanHotTVShows: '豆瓣热门电视剧', doubanHotAnime: '豆瓣热门动漫', doubanNewMovies: '豆瓣最新电影', doubanNewTVShows: '豆瓣最新电视剧', doubanTop250: '豆瓣电影TOP250', doubanChineseTVRankings: '豆瓣国产剧集榜', doubanGlobalTVRankings: '豆瓣全球剧集榜', noCategoryContent: '当前分类下没有可显示的内容', configureContent: '设置显示内容', customizeContent: '自定义内容', selectContentToDisplay: '选择您想在页面显示的内容', selectAll: '全选', selectNone: '全不选', }, discover: { setTabOrder: '设置标签顺序', dragToReorder: '拖动对标签页进行排序', }, downloading: { noDownloader: '没有下载器', configureDownloader: '请先在设置中正确配置并启用下载器。', title: '下载', noTask: '没有任务', noTaskDescription: '正在下载的任务将会显示在这里。', }, resource: { searchResults: '资源搜索结果', keyword: '关键词', title: '标题', year: '年份', season: '季', switchingView: '切换视图', backToHome: '返回首页', searching: '正在搜索,请稍候...', noData: '没有数据', noResourceFound: '未搜索到任何资源', aiRecommend: '智能推荐', reRecommend: '重新生成推荐', aiRecommendError: '智能推荐失败', }, browse: { actor: '演员', }, appcenter: { others: '其他', }, notFound: { title: '⚠️ 页面不存在', description: '您想要访问的页面不存在,请检查地址是否正确。', backButton: '返回', }, torrent: { selectAll: '全选', clear: '清除', clearFilters: '清除筛选', confirm: '确定', resources: '个资源', noResults: '没有找到匹配的资源', sortDefault: '默认', sortSite: '站点', sortSize: '大小', sortSeeder: '做种数', sortPublishTime: '发布时间', filterSite: '站点', filterSeason: '季', filterFreeState: '促销状态', filterVideoCode: '视频编码', filterEdition: '质量', filterResolution: '分辨率', filterReleaseGroup: '制作组', noMatchingResults: '没有数据', allFilters: '综合筛选', clearAll: '清除全部', }, calendar: { episode: '第{number}集', }, storage: { name: '名称', type: '类型', customTypeHint: '自定义存储类型,用于插件等场景', usedPercent: '已使用 {percent}%', noConfigNeeded: '此存储类型无需配置参数,请直接配置目录!', notConfigured: '未配置', local: '本地', alipan: '阿里云盘', u115: '115网盘', rclone: 'RClone', alist: 'OpenList', smb: 'SMB网络共享', custom: '自定义', }, filterRules: { specSub: '特效字幕', cnSub: '中文字幕', cnVoi: '国语配音', gz: '官种', notCnVoi: '排除: 国语配音', hkVoi: '粤语配音', notHkVoi: '排除: 粤语配音', free: '促销: 免费', resolution4k: '分辨率: 4K', resolution1080p: '分辨率: 1080P', resolution720p: '分辨率: 720P', not720p: '排除: 720P', qualityBlu: '质量: 蓝光原盘', notBlu: '排除: 蓝光原盘', qualityBluray: '质量: BLURAY', notBluray: '排除: BLURAY', qualityUhd: '质量: UHD', notUhd: '排除: UHD', qualityRemux: '质量: REMUX', notRemux: '排除: REMUX', qualityWebdl: '质量: WEB-DL', notWebdl: '排除: WEB-DL', quality60fps: '质量: 60fps', not60fps: '排除: 60fps', codecH265: '编码: H265', notH265: '排除: H265', codecH264: '编码: H264', notH264: '排除: H264', effectDolby: '效果: 杜比视界', notDolby: '排除: 杜比视界', effectAtmos: '效果: 杜比全景声', notAtmos: '排除: 杜比全景声', effectHdr: '效果: HDR', notHdr: '排除: HDR', effectSdr: '效果: SDR', notSdr: '排除: SDR', effect3d: '效果: 3D', not3d: '排除: 3D', }, transferType: { copy: '复制', move: '移动', link: '硬链接', softlink: '软链接', }, site: { noSites: '没有站点', sitesWillBeShownHere: '已添加并支持的站点将会在这里显示。', noFilterData: '没有符合条件的站点', title: '站点', status: { enabled: '启用', disabled: '停用', }, fields: { url: '站点地址', priority: '优先级', status: '状态', rss: 'RSS地址', timeout: '超时时间(秒)', downloader: '下载器', cookie: '站点Cookie', userAgent: '站点User-Agent', authorization: '请求头(Authorization)', apiKey: '令牌(API Key)', limitAccess: '限制站点访问频率', limitInterval: '单位周期(秒)', limitCount: '周期内访问次数', limitSeconds: '访问间隔(秒)', useProxy: '使用代理访问', browserSimulation: '浏览器仿真', selectFile: '选择文件', }, hints: { url: '格式:http://www.example.com/', priority: '优先级越小越优先', status: '站点启用/停用', rss: '订阅模式为`站点RSS`时使用的订阅链接,如未自动获取需手动补充', timeout: '站点请求超时时间,为0时不限制', downloader: '此站点使用的下载器', cookie: '站点请求头中的Cookie信息', userAgent: '获取Cookie的浏览器对应的User-Agent', authorization: '站点请求头中的Authorization信息,特殊站点需要', apiKey: '站点的访问API Key,特殊站点需要', limitInterval: '限流控制的单位周期时长', limitCount: '单位周期内允许的访问次数', limitSeconds: '每次访问需要间隔的最小时间', useProxy: '使用代理服务器访问该站点', browserSimulation: '使用浏览器模拟真实访问该站点', import: '批量导入站点数据,支持JSON格式文件', selectFile: '选择JSON文件', dragDropFile: '拖拽文件到此处或点击选择文件', supportedFormat: '支持JSON格式的站点配置文件', }, actions: { add: '新增站点', edit: '编辑站点', import: '导入', export: '导出', startImport: '开始导入', }, messages: { addSuccess: '新增站点成功', addFailed: '新增站点失败', updateSuccess: '更新成功', updateFailed: '更新失败', exportSuccess: '站点导出成功', exportFailed: '站点导出失败', importSuccess: '成功导入 {count} 个站点', importFailed: '站点导入失败', importPartialFailed: '导入完成,成功 {success} 个,失败 {failed} 个', importAllFailed: '导入失败,{count} 个站点全部导入失败', noDataToImport: '没有数据可导入', noValidData: '没有有效的数据', someInvalidData: '部分数据无效,有效数据 {valid}/{total} 个', invalidFileType: '不支持的文件类型,请选择JSON文件', invalidFileFormat: '文件格式无效,请检查文件内容', parseFileError: '文件解析失败,请检查文件格式', previewData: '预览数据 ({count} 个站点)', importing: '正在导入... ({progress}%)', importErrors: '导入过程中出现 {count} 个错误', }, errors: { loadDownloader: '加载下载器设置失败', title: '导入错误详情', failed: '导入失败', details: '错误详情', }, results: { successTitle: '成功导入的站点', success: '导入成功', }, testConnectivity: '测试连通性', testing: '测试中 ...', testSuccess: '{name} 连通性测试成功,可正常使用!', testFailed: '{name} 连通性测试失败:{message}', connectionNormal: '连接正常', connectionSlow: '连接缓慢', connectionFailed: '连接失败', connectionUnknown: '连接未知', deleteConfirm: '是否确认删除站点?', deleteSuccess: '{name} 删除成功!', deleteFailed: '{name} 删除失败:{message}', browseResources: '浏览资源', deleteSite: '删除站点', updateCookie: '更新Cookie', viewUserData: '查看用户数据', statistics: '统计信息', totalSites: '总站点数', normalSites: '正常站点', slowSites: '缓慢站点', failedSites: '失败站点', averageTime: '平均耗时', successRate: '成功率', successCount: '成功次数', failCount: '失败次数', lastAccess: '最后访问', timeRecords: '耗时记录', recentTimeRecords: '最近耗时记录', accessTime: '访问时间', responseTime: '响应时间', noTimeRecords: '暂无耗时记录', preview: { title: '预览站点', showing: '显示 {count}/{total}', unnamed: '未命名站点', noUrl: '无站点地址', invalid: '数据无效', }, }, message: { loadMore: '加载更多', noMoreData: '没有更多数据', }, logging: { level: '级别', time: '时间', program: '程序', content: '内容', refreshing: '正在刷新', initializing: '正在初始化', }, moduleTest: { normal: '正常', disabled: '未启用', error: '错误', checking: '正在检查...', complete: '检查完成', preparing: '准备检查...', totalModules: '总模块数', recheck: '重新检查', }, nameTest: { recognize: '识别', recognizing: '识别中...', recognizeAgain: '重新识别', title: '标题', subtitle: '副标题', }, netTest: { notTested: '未测试', testing: '测试中...', normal: '正常', }, ruleTest: { test: '测试', testing: '正在测试...', testAgain: '重新测试', title: '标题', subtitle: '副标题', ruleGroup: '规则组', priority: '优先级:{value}', noPriorityRule: '未命中任何优先级规则!', }, setting: { about: { title: '关于 MoviePilot', softwareVersion: '软件版本', frontendVersion: '前端版本', browserVersion: '浏览器缓存版本', authVersion: '认证资源版本', indexerVersion: '站点资源版本', configDir: '配置目录', dataDir: '数据目录', timezone: '时区', latest: '最新', supportingSites: '支持站点', support: '支持', documentation: '文档', feedback: '问题反馈', channel: '发布频道', versions: '软件版本', latestVersion: '最新软件版本', currentVersion: '当前版本', viewChangelog: '查看变更日志', changelog: '变更日志', dataDirectory: '/moviepilot', expand: '展开', collapse: '收起', clearCache: '清除缓存', }, system: { custom: '自定义', basicSettings: '基础设置', basicSettingsDesc: '设置服务器的全局功能', appDomain: '访问域名', appDomainHint: '用于发送通知时,添加快捷跳转地址', wallpaper: '背景壁纸', wallpaperHint: '选择登陆页面背景来源', recognizeSource: '识别数据源', recognizeSourceHint: '设置默认媒体信息识别数据源', mediaServerSyncInterval: '媒体服务器同步间隔', mediaServerSyncIntervalHint: '定时同步媒体服务器数据到本地的时间间隔', hours: '小时', required: '必选项,请勿留空', numbersOnly: '仅支持输入数字,请勿输入其他字符', minInterval: '间隔不能小于1个小时', apiToken: 'API令牌', apiTokenHint: '设置外部请求MoviePilot API时使用的token值', apiTokenMinChars: '不能小于16位字符', apiTokenRequired: '必填项;请输入API Token', apiTokenLength: 'API Token不得低于16位', githubToken: 'Github Token', githubTokenFormat: 'ghp_**** 或 github_pat_****', githubTokenHint: '用于提高插件等访问Github API时的限流阈值,建议配置,否则插件可能无法正常使用', ocrHost: '验证码识别服务器', ocrHostHint: '用于站点签到、更新站点Cookie等识别验证码', aiAgent: '启用智能助手', aiAgentEnable: '启用智能助手', aiAgentEnableHint: '启用后可使用智能助手功能,需要配置LLM相关参数', llmProvider: 'LLM提供商', llmProviderHint: '选择使用的LLM服务提供商', llmModel: 'LLM模型名称', llmModelHint: '指定使用的LLM模型,如gpt-3.5-turbo、deepseek-chat等', llmMaxContextTokens: 'LLM 最大上下文 Token 数量 (K)', llmMaxContextTokensHint: '设定 LLM 记录会话历史的最大 Token 数量上限(千),超出后将自动修整历史记录以节省 Token 消耗及防止超出 LLM 限制', llmApiKey: 'LLM API密钥', llmApiKeyHint: 'LLM服务提供商的API密钥,用于身份验证', llmApiKeyPlaceholder: '请输入API密钥', llmBaseUrl: 'LLM基础URL', llmBaseUrlHint: 'LLM API的基础URL地址,用于自定义API端点', aiAgentGlobal: '全局智能助手', aiAgentGlobalHint: '启用全局智能助手功能,所有消息对话均使用智能体回答而不用使用/ai命令', advancedSettings: '高级设置', advancedSettingsDesc: '系统进阶设置,特殊情况下才需要调整', downloaders: '下载器', downloadersDesc: '只有默认下载器才会被默认使用。', aiRecommendEnabled: '搜索结果智能推荐', aiRecommendEnabledHint: '启用搜索结果智能推荐功能,开启后将在搜索结果页面显示智能推荐按钮,可根据用户偏好智能推荐资源', aiRecommendUserPreference: '用户偏好', aiRecommendUserPreferenceHint: '设置智能推荐时的用户偏好,例如:4K WEB-DL Dolby Vision', aiRecommendMaxItems: '智能推荐分析条目上限', aiRecommendMaxItemsHint: '限制发送给智能助手进行分析的搜索结果数量,数量越多分析越慢且消耗 Token 越多,建议先手动筛选,筛选出大致范围后再进行智能推荐', mediaServers: '媒体服务器', mediaServersDesc: '所有启用的媒体服务器都会被使用。', trimeMedia: '飞牛影视', system: '系统', media: '媒体', network: '网络', log: '日志', lab: '实验室', downloaderSaveSuccess: '下载器设置保存成功', downloaderSaveFailed: '下载器设置保存失败!', defaultDownloaderNotice: '未设置默认下载器,已将【{name}】作为默认下载器', mediaServerSaveSuccess: '媒体服务器设置保存成功', mediaServerSaveFailed: '媒体服务器设置保存失败!', saveFailed: '设置保存失败:{message}!', basicSaveSuccess: '基础设置保存成功', advancedSaveSuccess: '高级设置保存成功', copySuccess: '已复制到剪贴板!', copyFailed: '复制失败:可能是浏览器不支持或被用户阻止!', copyError: '复制失败!', reloading: '正在应用配置...', qbittorrent: 'Qbittorrent', transmission: 'Transmission', emby: 'Emby', jellyfin: 'Jellyfin', plex: 'Plex', reloadSuccess: '系统配置已生效', reloadFailed: '重载系统失败!', auxAuthEnable: '用户辅助认证', auxAuthEnableHint: '允许外部服务进行登录认证以及自动创建用户', globalImageCache: '全局图片缓存', globalImageCacheHint: '将媒体图片缓存到本地,提升图片加载速度', subscribeStatisticShare: '分享订阅数据', subscribeStatisticShareHint: '分享订阅统计数据到热门订阅,供其他MPer参考', pluginStatisticShare: '上报插件安装数据', pluginStatisticShareHint: '上报插件安装数据给服务器,用于统计展示插件安装情况', workflowStatisticShare: '分享工作流数据', workflowStatisticShareHint: '分享工作流统计数据到热门工作流,供其他MPer参考', bigMemoryMode: '大内存模式', bigMemoryModeHint: '使用更大的内存缓存数据,提升系统性能', dbWalEnable: '数据库WAL模式', dbWalEnableHint: '可提升读写并发性能,但可能在异常情况下增加数据丢失风险,更改后需重启生效', tmdbApiDomain: 'TMDB API服务地址', tmdbApiDomainPlaceholder: 'api.themoviedb.org', tmdbApiDomainHint: '自定义themoviedb API域名或代理地址', tmdbApiDomainRequired: '请输入TMDB API域名', tmdbImageDomain: 'TMDB 图片服务地址', tmdbImageDomainPlaceholder: 'image.tmdb.org', tmdbImageDomainHint: '自定义themoviedb图片服务域名或代理地址', tmdbImageDomainRequired: '请输入图片服务域名', tmdbLocale: 'TMDB 元数据语言', tmdbLocalePlaceholder: 'zh', tmdbLocaleHint: '自定义themoviedb元数据语言', metaCacheExpire: '媒体元数据缓存过期时间', metaCacheExpireHint: '识别元数据本地缓存时间,为 0 时使用内置默认值', metaCacheExpireRequired: '请输入元数据缓存时间', metaCacheExpireMin: '元数据缓存时间必须大于等于0', scrapFollowTmdb: '跟随TMDB识别整理', scrapFollowTmdbHint: '关闭时以整理历史记录为准(如有),避免TMDB数据在订阅中途修改', scrapOriginalImage: 'TMDB 刮削原语种图片', scrapOriginalImageHint: '刮削原语种图片,否则刮削元数据语种图片', fanartEnable: 'Fanart图片数据源', fanartEnableHint: '使用 fanart.tv 的图片数据', fanartLang: 'Fanart语言', fanartLangHint: '设置Fanart图片的语言偏好,多选时按优先级顺序排列', githubProxy: 'Github加速代理', githubProxyPlaceholder: '留空表示不使用代理', githubProxyHint: '使用代理加速Github访问速度', pipProxy: 'PIP加速代理', pipProxyPlaceholder: '留空表示不使用代理', pipProxyHint: '使用代理加速插件等pip库安装速度', dohEnable: 'DNS Over HTTPS', dohEnableHint: '使用DOH对特定域名进行解析,以防止DNS污染', dohResolvers: 'DOH 服务器', dohResolversPlaceholder: 'https://dns.google/dns-query,1.1.1.1', dohResolversHint: 'DNS解析服务器地址,多个地址使用逗号分隔', dohDomains: 'DOH 域名', dohDomainsPlaceholder: 'example.com,example2.com', dohDomainsHint: '使用DOH解析的域名,多个域名使用逗号分隔', debug: '调试模式', debugHint: '启用调试模式后,日志将以DEBUG级别记录,以便排查问题', logLevel: '日志等级', logLevelHint: '设置日志记录的级别,用于控制日志输出量', logMaxFileSize: '日志文件最大容量(MB)', logMaxFileSizeHint: '限制单个日志文件的最大容量,超出后将自动分割日志', logMaxFileSizeRequired: '日志文件最大大小', logMaxFileSizeMin: '日志文件最大容量必须大于等于1', logBackupCount: '日志文件最大备份数量', logBackupCountHint: '设置每个模块日志文件的最大备份数量,超过后将覆盖旧日志', logBackupCountRequired: '请输入日志文件最大备份数量', logBackupCountMin: '日志文件最大备份数量必须大于等于1', logFileFormat: '日志文件格式', logFileFormatHint: '设置日志文件的输出格式,用于自定义日志的显示内容', pluginAutoReload: '插件热加载', pluginAutoReloadHint: '修改插件文件后自动重新加载,开发插件时使用', encodingDetectionPerformanceMode: '编码探测性能模式', encodingDetectionPerformanceModeHint: '优先提升探测效率,但可能降低编码探测的准确性', transferThreads: '文件整理线程数', transferThreadsHint: '多线程整理文件可以提高速度,但可能增加系统资源占用', tokenizedSearch: '分词搜索', tokenizedSearchHint: '提升整理历史记录搜索精度,但可能增加性能开销和意外结果', tmdbLanguage: { zhCN: '简体中文', zhTW: '繁体中文', en: '英文', }, fanartLanguage: { zh: '中文', en: '英文', ja: '日文', ko: '韩文', de: '德文', fr: '法文', es: '西班牙文', it: '意大利文', pt: '葡萄牙文', ru: '俄文', }, logLevelItems: { debug: 'DEBUG - 调试', info: 'INFO - 信息', warning: 'WARNING - 警告', error: 'ERROR - 错误', critical: 'CRITICAL - 严重', }, wallpaperItems: { tmdb: 'TMDB电影海报', bing: 'Bing每日壁纸', mediaserver: '媒体服务器', none: '无壁纸', customize: '自定义', }, mb: 'MB', hour: '小时', customizeWallpaperApi: '自定义壁纸API地址', customizeWallpaperApiHint: '会获取API返回内容中所有允许的安全域名地址的图片,需要同步设置安全域名地址', customizeWallpaperApiRequired: '必填项;请输入自定义壁纸API', securityImageDomains: '安全图片域名', securityImageDomainsHint: '允许缓存的图片域名白名单,用于控制可信任的图片来源', noSecurityImageDomains: '暂无安全域名', securityImageDomainAdd: '添加域名,如:image.tmdb.org', proxyHost: '代理服务器', proxyHostHint: '设置代理服务器地址,支持:http(s)、socks5、socks5h 等协议', moviePilotAutoUpdate: '自动更新MoviePilot', moviePilotAutoUpdateHint: '重启时自动更新MoviePilot到最新发行版本', autoUpdateResource: '自动更新站点资源', autoUpdateResourceHint: '重启时自动检测和更新站点资源包', // 刮削开关设置 scrapingSwitchSettings: '刮削开关设置', scrapingSwitchSettingsDesc: '控制各类媒体文件的刮削功能开关', movie: '电影', tv: '电视剧', season: '季', episode: '集', movieNfo: 'NFO', moviePoster: '海报', movieBackdrop: '背景图', movieLogo: 'Logo', movieDisc: '光盘图', movieBanner: '横幅图', movieThumb: '缩略图', tvNfo: 'NFO', seasonNfo: 'NFO', tvPoster: '海报', tvBackdrop: '背景图', tvBanner: '横幅图', tvLogo: 'Logo', tvThumb: '缩略图', seasonPoster: '海报', seasonBanner: '横幅图', seasonThumb: '缩略图', episodeNfo: 'NFO', episodeThumb: '缩略图', scrapingSwitchSaveFailed: '刮削开关设置保存失败:{message}', scrapingSwitchSaveError: '刮削开关设置保存失败', }, site: { siteSync: '站点同步', siteSyncDesc: '从CookieCloud快速同步站点数据', enableLocalCookieCloud: '启用本地CookieCloud服务器', enableLocalCookieCloudHint: '使用内建CookieCloud服务同步站点数据,服务地址为:http://localhost:3000/cookiecloud', serviceAddress: '服务地址', serviceAddressPlaceholder: 'https://movie-pilot.org/cookiecloud', serviceAddressHint: '远端CookieCloud服务地址,格式:https://movie-pilot.org/cookiecloud', userKey: '用户KEY', userKeyHint: 'CookieCloud浏览器插件生成的用户KEY', e2ePassword: '端对端加密密码', e2ePasswordHint: 'CookieCloud浏览器插件生成的端对端加密密码', autoSyncInterval: '自动同步间隔', autoSyncIntervalHint: '从CookieCloud服务器自动同步站点Cookie到MoviePilot的时间间隔', syncBlacklist: '同步域名黑名单', syncBlacklistPlaceholder: '多个域名,分割', syncBlacklistHint: 'CookieCloud同步域名黑名单,多个域名,分割', userAgent: '浏览器User-Agent', userAgentHint: 'CookieCloud插件所在的浏览器的User-Agent', siteDataRefresh: '站点数据刷新', siteOptions: '站点选项', browserEmulation: '浏览器仿真', browserEmulationHint: '站点访问仿真方式,支持 Playwright 或 FlareSolverr', flaresolverrUrl: 'FlareSolverr 服务地址', flaresolverrUrlHint: '当仿真方式为 FlareSolverr 时生效,例如:http://127.0.0.1:8191', siteDataRefreshInterval: '站点数据刷新间隔', siteDataRefreshIntervalHint: '刷新站点用户上传下载等数据的时间间隔', readSiteMessage: '阅读站点消息', readSiteMessageHint: '刷新数据时读取站点消息并发送通知', siteReset: '站点重置', confirmReset: '确认删除所有站点数据并重新同步。', confirmResetHint: '删除所有站点数据并重新从CookieCloud同步,操作请先清空涉及站点的相关设置。', resetSites: '重置站点数据', resettingSites: '正在重置...', syncInterval: { hourly: '每小时', every6Hours: '每6小时', every12Hours: '每12小时', daily: '每天', weekly: '每周', monthly: '每月', never: '永不', }, saveSuccess: '保存站点设置成功', saveFailed: '站点设置保存失败!', resetSuccess: '站点重置成功,请等待CookieCloud同步完成!', resetFailed: '站点重置失败!', }, notification: { channels: '通知渠道', channelsDesc: '设置消息发送渠道参数', organizeSuccess: '资源入库', downloadAdded: '资源下载', subscribeAdded: '添加订阅', subscribeComplete: '订阅完成', templateConfigTitle: '通知模板', templateConfigDesc: '设置通知模板,支持Jinja2语法。', templateSaveFailed: '模板保存失败!', templateSaveSuccess: '模板保存成功', templateLoadFailed: '模板加载失败!', scope: '通知发送范围', scopeDesc: '对应消息类型只会发送给设定的用户。', messageType: '消息类型', scopeRange: '范围', operationUserOnly: '仅操作用户', adminOnly: '仅管理员', userAndAdmin: '操作用户和管理员', allUsers: '所有用户', sendTime: '通知发送时间', sendTimeDesc: '设定消息发送的时间范围。', startTime: '开始时间', endTime: '结束时间', saveSuccess: '通知设置保存成功', saveFailed: '通知设置保存失败!', switchSaveSuccess: '消息类型开关保存成功', switchSaveFailed: '消息类型开关保存失败!', timeSaveSuccess: '通知发送时间保存成功', timeSaveFailed: '通知发送时间保存失败!', channel: '通知', wechat: '微信', resourceDownload: '资源下载', mediaImport: '整理入库', subscription: '订阅', site: '站点', mediaServer: '媒体服务器', manualProcess: '手动处理', plugin: '插件', other: '其它', telegram: 'Telegram', slack: 'Slack', synologyChat: 'SynologyChat', voceChat: 'VoceChat', webPush: 'WebPush', custom: '自定义通知', }, words: { customIdentifiers: '自定义识别词', identifiersDesc: '添加规则对种子名或者文件名进行预处理以校正识别', identifiersPlaceholder: '支持正则表达式,特殊字符需要\\转义,一行为一组', identifiersHint: '支持正则表达式,特殊字符需要\\转义,一行为一组', formatTitle: '支持的配置格式(注意空格):', formatContent: '屏蔽词\n' + '被替换词 => 替换词\n' + '前定位词 <> 后定位词 >> 集偏移量(EP)\n' + '被替换词 => 替换词 && 前定位词 <> 后定位词 >> 集偏移量(EP)\n' + '其中替换词支持格式:{[tmdbid/doubanid=xxx;type=movie/tv;s=xxx;e=xxx]} 直接指定TMDBID/豆瓣ID识别,其中s、e为季数和集数(可选)', identifierSaveSuccess: '自定义识别词保存成功', identifierSaveFailed: '自定义识别词保存失败!', customReleaseGroups: '自定义制作组/字幕组', releaseGroupsDesc: '添加无法识别的制作组/字幕组。', releaseGroupsPlaceholder: '支持正则表达式,特殊字符需要\\转义,一行代表一个制作组/字幕组', releaseGroupsHint: '支持正则表达式,特殊字符需要\\转义,一行代表一个制作组/字幕组', releaseGroupSaveSuccess: '自定义制作组/字幕组保存成功', releaseGroupSaveFailed: '自定义制作组/字幕组保存失败!', customization: '自定义占位符', customizationDesc: '添加自定义占位符识别正则,重命名格式中添加{customization}使用。', customizationPlaceholder: '支持正则表达式,特殊字符需要\\转义,多个匹配对象请换行分隔', customizationHint: '支持正则表达式,特殊字符需要\\转义,多个匹配对象请换行分隔', customizationSaveSuccess: '自定义占位符保存成功', customizationSaveFailed: '自定义占位符保存失败!', transferExcludeWords: '文件整理屏蔽词', excludeWordsDesc: '目录名或文件名中包含屏蔽词时不进行整理。', excludeWordsPlaceholder: '支持正则表达式,特殊字符需要\\转义,一行代表一个屏蔽词', excludeWordsHint: '支持正则表达式,特殊字符需要\\转义,一行代表一个屏蔽词', excludeWordsSaveSuccess: '文件整理屏蔽词保存成功', excludeWordsSaveFailed: '文件整理屏蔽词保存失败!', }, search: { basicSettings: '基础设置', basicSettingsDesc: '设定数据源、规则组等基础信息', recognizeSource: '识别数据源', recognizeSourceDesc: '默认使用TMDB。豆瓣识别中文作品通常更友好,但有些国外作品信息不完整。', themoviedb: 'TheMovieDb', douban: '豆瓣', filterRuleGroup: '过滤规则组', filterRuleGroupDesc: '设置下载过程中使用的过滤规则组。', downloadLabel: '下载任务标签', downloadLabelDesc: '下载器中的下载标签,用于过滤查询。', downloadLabelHint: '支持增加多个标签,英文逗号分隔', downloadSite: '搜索站点', downloadSiteDesc: '设置指定分类搜索的站点范围。', movieSites: '电影站点', tvSites: '电视剧站点', animeSites: '动漫站点', saveSites: '保存站点', saveSuccess: '保存搜索设置成功', saveFailed: '搜索设置保存失败!', saveRuleFailed: '规则保存失败!', movieCategory: '电影', tvCategory: '电视剧', animeCategory: '动漫', downloadUser: '远程搜索自动下载用户', downloadUserHint: '使用Telegram、微信等搜索时是否自动下载,使用逗号分割,设置为 all 代表所有用户自动择优下载', multipleNameSearch: '多名称资源搜索', multipleNameSearchHint: '使用多个名称(中文、英文等)搜索站点资源并合并搜索结果,会增加站点访问频率', downloadSubtitle: '下载站点字幕', downloadSubtitleHint: '检查站点资源是否有单独的字幕文件并自动下载', mediaSource: '媒体搜索数据源', mediaSourceHint: '搜索媒体信息时使用的数据源以及排序', filterRuleGroupHint: '搜索媒体信息时按选定的过滤规则组对结果进行过滤', downloadUserPlaceholder: '用户ID1,用户ID2', downloadLabelPlaceholder: 'MOVIEPILOT', }, directory: { storage: '存储', storageDesc: '设置本地或网盘存储', directory: '目录', mediaType: '媒体类型', directoryDesc: '设置媒体文件整理目录结构,按先后顺序依次匹配。', organizeAndScrap: '整理 & 刮削', organizeAndScrapDesc: '设置重命名格式、刮削选项等。', scrapSource: '刮削数据源', scrapSourceHint: '刮削时的元数据来源', movieRenameFormat: '电影重命名格式', movieRenameFormatHint: '使用Jinja2语法,格式参考:https://jinja.palletsprojects.com/en/3.0.x/templates', tvRenameFormat: '电视剧重命名格式', tvRenameFormatHint: '使用Jinja2语法,格式参考:https://jinja.palletsprojects.com/en/3.0.x/templates', saveSuccess: '存储设置保存成功', saveFailed: '存储设置保存失败!', directorySaveSuccess: '目录设置保存成功', directorySaveFailed: '目录设置保存失败!', organizeSaveSuccess: '整理选项设置保存成功', organizeSaveFailed: '整理选项设置保存失败!', duplicateDirectoryName: '存在重复目录名称!无法保存,请修改!', defaultDirName: '目录', storageSaveSuccess: '存储设置保存成功', storageSaveFailed: '存储设置保存失败!', }, rule: { customRules: '自定义规则', customRulesDesc: '自定义优先级规则项', priorityRuleGroups: '优先级规则组', priorityRuleGroupsDesc: '预设优先级规则组,以便在搜索和订阅中使用。', downloadRules: '下载规则', downloadRulesDesc: '同时命中多个资源时择优下载。', resourcePriority: '资源优先级', sitePriority: '站点优先级', siteUpload: '站点上传量', resourceSeeder: '资源做种数', emptyIdError: '存在空ID的规则,无法保存,请修改!', emptyNameError: '存在空名字的规则,无法保存,请修改!', duplicateIdError: '存在重复规则ID!无法保存,请修改!', duplicateNameError: '存在重复规则名称!无法保存,请修改!', customRuleSaveSuccess: '自定义规则保存成功', customRuleSaveFailed: '自定义规则保存失败!', emptyGroupNameError: '存在空名字的规则组!无法保存,请修改!', duplicateGroupNameError: '存在重复规则组名称!无法保存,请修改!', ruleGroupSaveSuccess: '优先级规则组保存成功', ruleGroupSaveFailed: '优先级规则组保存失败!', customRuleCopySuccess: '自定义规则已复制到剪贴板!', customRuleCopyFailed: '自定义规则复制失败:可能是浏览器不支持或被用户阻止!', customRuleCopyError: '自定义规则复制失败!', ruleGroupCopySuccess: '优先级规则组已复制到剪贴板!', ruleGroupCopyFailed: '优先级规则组复制失败:可能是浏览器不支持或被用户阻止!', ruleGroupCopyError: '优先级规则组复制失败!', currentPriorityRules: '当前使用下载优先规则', currentPriorityRulesHint: '排在前面的优先级越高,未选择的项不纳入排序', importCustomRules: '导入自定义规则', importRuleGroups: '导入优先级规则组', importFailed: '导入规则失败!无法解析输入的数据!', importUnknownType: '导入规则失败!未知的数据类型!', duplicateValue: '存在重名值', importNoId: '导入失败!发现有规则不存在ID,可能属于优先级规则组!', importHasId: '导入失败!发现有规则存在相同ID,可能属于自定义规则!', }, scheduler: { title: '定时作业', subtitle: '包含系统内置服务以及插件提供的服务', provider: '提供者', taskName: '任务名称', taskStatus: '任务状态', nextRunTime: '下一次执行时间', execute: '执行', noService: '没有后台服务', running: '正在运行', stopped: '已停止', waiting: '等待', executeSuccess: '定时作业执行请求提交成功!', }, subscribe: { basicSettings: '基础设置', basicSettingsDesc: '设定订阅模式、周期等基础设置', subscribeSites: '订阅站点', subscribeSitesDesc: '只有选中的站点才会在订阅中使用。', mode: '订阅模式', modeHint: '自动:自动爬取站点首页,站点RSS:通过站点RSS链接订阅', rssInterval: '站点RSS周期', rssIntervalHint: '设置站点RSS运行周期,在订阅模式为`站点RSS`时生效', filterRuleGroup: '订阅优先级规则组', filterRuleGroupHint: '按选定的过滤规则组对订阅进行过滤', bestVersionRuleGroup: '洗版优先级规则组', bestVersionRuleGroupHint: '按选定的过滤规则组对洗版订阅进行过滤', timedSearch: '订阅定时搜索', timedSearchHint: '每隔指定时间全站搜索,以补全订阅可能漏掉的资源', searchInterval: '订阅搜索时间间隔', searchIntervalHint: '设置订阅搜索的时间间隔,仅在开启订阅定时搜索时生效', checkLocalMedia: '检查文件系统资源', checkLocalMediaHint: '扫描存储目录中是否已存在相应资源文件,以避免重复下载;不管是否开启都会检查媒体服务器', modes: { auto: '自动', rss: '站点RSS', }, intervals: { min5: '5分钟', min10: '10分钟', min20: '20分钟', min30: '半小时', hour1: '1小时', hour12: '12小时', day1: '1天', day3: '3天', week1: '一周', }, saveSuccess: '订阅站点保存成功', saveFailed: '订阅站点保存失败!', settingsSaveSuccess: '订阅基础设置保存成功', settingsSaveFailed: '订阅基础设置保存失败!', }, cache: { title: '缓存管理', subtitle: '管理缓存的站点资源', totalCount: '总条数', siteCount: '站点数', filterByTitle: '按标题筛选', filterBySite: '按站点筛选', selectSite: '选择站点', refresh: '刷新缓存', deleteSelected: '删除选中', clearAll: '清空缓存', refreshSuccess: '缓存刷新完成', refreshFailed: '刷新缓存失败', clearSuccess: '缓存清理完成', clearFailed: '清理缓存失败', deleteSuccess: '缓存项删除成功', deleteFailed: '删除缓存项失败', deleteSelectedSuccess: '成功删除 {count} 个缓存项', deleteSelectedFailed: '删除缓存项失败', loadFailed: '加载缓存数据失败', selectDeleteWarning: '请选择要删除的缓存项', reidentify: '重新识别', reidentifySuccess: '重新识别完成', reidentifyFailed: '重新识别失败', poster: '海报', torrentTitle: '标题', site: '站点', size: '大小', publishTime: '发布时间', recognitionResult: '识别结果', actions: '操作', unrecognized: '未识别', noData: '暂无缓存数据', noDataHint: '点击"刷新缓存"按钮获取最新的种子缓存', reidentifyDialog: { title: '重新识别', torrentInfo: '种子信息', tmdbId: 'TMDB ID', tmdbIdHint: '可选,手动指定TMDB ID进行识别', doubanId: '豆瓣 ID', doubanIdHint: '可选,手动指定豆瓣ID进行识别', autoHint: '如果不指定ID,将自动重新识别该种子', cancel: '取消', confirm: '重新识别', }, mediaType: { movie: '电影', tv: '电视剧', }, clearConfirm: '确认清空所有缓存吗?', }, }, dialog: { progress: { processing: '处理中', }, subscribeSeason: { title: '订阅 - {title}', selectGroup: '选择剧集组', defaultGroup: '默认', seasonCount: '{count} 季', episodeCount: '{count} 集', seasonNumber: '第 {number} 季', airDate: '首播于 {date}', voteAverage: '{score}', status: { exists: '已入库', partial: '部分缺失', missing: '缺失', }, submit: '提交订阅', selectSeasons: '请选择订阅季', }, userAddEdit: { add: '添加用户', edit: '编辑用户', username: '用户名', usernameRequired: '用户名不能为空', password: '密码', passwordMinLength: '密码长度不能少于6位', confirmPassword: '确认密码', confirmPasswordRequired: '请确认密码', passwordMismatch: '两次输入的密码不一致', email: '邮箱', nickname: '昵称', status: '状态', active: '激活', inactive: '已停用', superUser: '超级用户', otp: '启用二次验证', avatar: '头像', uploadAvatar: '上传头像', resetDefaultAvatar: '重置默认头像', restoreCurrentAvatar: '还原当前头像', notifications: '通知', wechat: '微信ID', telegram: 'Telegram ID', slack: 'Slack ID', discord: 'Discord ID', vocechat: 'VoceChat ID', synologyChat: 'SynologyChat ID', webPush: 'WebPush', creatingUser: '正在创建【{name}】用户,请稍后', updatingUser: '正在更新【{name}】用户,请稍后', usernameExists: '用户名已存在', userCreated: '用户【{name}】创建成功', userCreateFailed: '创建用户失败:{message}', userUpdateSuccess: '用户【{name}】更新成功', userUpdateFailed: '更新用户失败:{message}', userDeleteSuccess: '用户【{name}】删除成功', userDeleteFailed: '删除用户失败:{message}', invalidFile: '上传的文件不符合要求,请重新选择头像', fileSizeLimit: '文件大小不得大于800KB', avatarUploadSuccess: '新头像上传成功,待保存后生效!', resetAvatarSuccess: '已重置为默认头像,待保存后生效!', restoreAvatarSuccess: '已还原当前使用头像!', deleteConfirm: '确认删除用户【{name}】吗?', saveUserInfo: '保存用户信息', cannotDeleteCurrentUser: '不能删除当前登录用户', deleteUser: '删除用户', permissions: { title: '权限设置', presetNormal: '普通用户', presetAdmin: '管理员', discovery: '发现', discoveryDesc: '访问推荐和探索功能', search: '搜索', searchDesc: '搜索站点资源和添加下载', subscribe: '订阅', subscribeDesc: '管理电影和电视剧订阅', manage: '管理', manageDesc: '访问下载管理和站点管理等功能', }, }, searchBar: { search: '搜索', searchPlaceholder: '搜索功能、订阅、设置...', recentSearches: '最近搜索', noRecentSearches: '没有最近搜索记录', functions: '功能', noFunctionsFound: '没有匹配的功能', plugins: '插件', noPluginsFound: '没有匹配的插件', subscriptions: '订阅', noSubscriptionsFound: '没有匹配的订阅', searchSites: '搜索站点', selectSites: '选择站点', collections: '系列合集', collectionSearch: '相关的系列作品', actorSearch: '相关的演员、导演等', historySearch: '相关的历史记录', subscribeShareSearch: '相关的订阅分享', siteResources: '站点资源', searchInSites: '在站点中搜索种子资源', relatedResources: '相关资源', searchTip: '可搜索电影、电视剧、演员、资源等', }, searchSite: { selectSites: '选择站点', siteSearch: '站点搜索', searchAllSites: '已选择 {selected}/{total} 个站点', selectAll: '选择全部', deselectAll: '取消全选', confirm: '确认', cancel: '取消', }, importCode: { import: '导入', title: '导入代码', }, addDownload: { confirmDownload: '确认下载', downloader: '下载器(默认)', saveDirectory: '保存目录(自动)', defaultPlaceholder: '留空默认', autoPlaceholder: '留空自动匹配', downloading: '下载中...', startDownload: '开始下载', downloadSuccess: '{site} {title} 下载成功!', downloadFailed: '{site} {title} 下载失败:{message}!', showAdvancedOptions: '显示高级选项', hideAdvancedOptions: '隐藏高级选项', }, subscribeShare: { shareSubscription: '分享订阅', season: '第 {number} 季', title: '标题', description: '说明', descriptionHint: '填写关于该订阅的说明,订阅中的搜索词、识别词等将会默认包含在分享中', shareUser: '分享用户', shareUserHint: '分享人的昵称', confirmShare: '确认分享', shareSuccess: '{name} 分享成功!', shareFailed: '{name} 分享失败:{message}!', }, workflowShare: { shareWorkflow: '分享工作流', title: '标题', description: '说明', descriptionHint: '填写关于该工作流的说明,工作流的动作和流程将会默认包含在分享中', shareUser: '分享用户', shareUserHint: '分享人的昵称', confirmShare: '确认分享', shareSuccess: '{name} 分享成功!', shareFailed: '{name} 分享失败:{message}!', securityWarning: '安全提醒', securityWarningMessage: '分享前请确保工作流没有敏感信息,比如RSS链接中的PassKey等,避免产生信息泄露。', }, u115Auth: { loginTitle: '115网盘登录', scanQrCode: '请使用微信或115客户端扫码', scanned: '已扫码,请确认登录', complete: '完成', reset: '重置', }, aliyunAuth: { loginTitle: '阿里云盘登录', scanQrCode: '请用阿里云盘 App 扫码', scanned: '已扫码', complete: '完成', reset: '重置', }, rcloneConfig: { title: 'RClone配置', filePath: 'rclone配置文件路径', fileContent: 'rclone配置文件内容', defaultContent: '# 请在此处填写rclone配置文件内容 \n# 请参考 https://rclone.org/docs/ \n# 存储节点名必须为:MP', complete: '完成', reset: '重置', }, alistConfig: { title: 'OpenList配置', serverUrl: 'OpenList服务地址', username: '用户名', password: '密码', tokenUrl: '获取Token地址', loginType: '登录方式', loginTypeOptions: { guest: '访客', username: '用户名密码', token: '令牌', }, complete: '完成', reset: '重置', }, smbConfig: { title: 'SMB网络共享配置', host: 'SMB服务器地址', hostHint: 'SMB服务器的IP地址或主机名', share: '共享名称', shareHint: '要连接的共享文件夹名称', username: '用户名', usernameHint: 'SMB登录用户名', password: '密码', passwordHint: 'SMB登录密码', domain: '域名', domainHint: 'SMB域名,如WORKGROUP或域控制器名称', complete: '完成', reset: '重置', }, workflowAddEdit: { addTitle: '添加工作流', editTitle: '编辑工作流', name: '名称', namePlaceholder: '工作流名称', desc: '描述', descPlaceholder: '工作流描述', enabled: '启用', triggerType: '触发类型', triggerTypeTimer: '定时触发', triggerTypeEvent: '事件触发', triggerTypeManual: '手动触发', schedule: '定时执行', cronExpr: 'Cron表达式', cronExprDesc: '工作流定时执行的cron表达式', eventType: '事件类型', eventTypePlaceholder: '请选择事件类型', nameRequired: '请填写完整信息!', triggerRequired: '请选择触发类型!', timerRequired: '请填写定时表达式!', eventTypeRequired: '请选择事件类型!', addSuccess: '创建任务成功,请编辑流程!', addFailed: '创建任务失败:{message}', editSuccess: '修改任务成功!', editFailed: '修改任务失败:{message}', cancel: '取消', confirm: '确认', }, workflowActions: { title: '编辑流程', noActionsMessage: '工作流没有动作,请添加动作', addAction: '添加动作', editAction: '编辑动作', deleteAction: '删除动作', moveUp: '上移', moveDown: '下移', nameLabel: '动作名称', nameRequired: '动作名称不能为空', typeLabel: '动作类型', typeRequired: '动作类型不能为空', paramsLabel: '动作参数', outputLabel: '动作输出', saveAction: '保存动作', cancelAction: '取消', confirmDeleteTitle: '确认删除动作', confirmDeleteMessage: '确定要删除此动作吗?此操作无法撤销。', yesDelete: '是的,删除', noCancel: '取消', invalidConnection: '非法连接:不能连接自身或同类型端口!', componentNotFound: '组件 {component} 未找到', componentAdded: '已添加组件到画布', saveSuccess: '保存任务流程成功!', saveFailed: '保存任务流程失败:{message}', importTitle: '导入任务流程', importSuccess: '导入成功!', importFailed: '导入失败!', codeCopied: '任务流程代码已复制到剪贴板!', }, siteCookieUpdate: { title: '更新站点Cookie & UA', processing: '请稍候...', updating: '正在更新 {site} Cookie & UA...', success: '{site} 更新Cookie & UA成功!', failed: '{site} 更新失败:{message}', updateButton: '开始更新', }, siteAddEdit: { addTitle: '添加站点', editTitle: '编辑站点', nameLabel: '站点名称', urlLabel: '站点URL', iconLabel: '站点图标', uploadIcon: '上传图标', cookie: 'Cookie', rssUrl: 'RSS链接', enableLabel: '启用', pubEnableLabel: '资源公开', priorityLabel: '优先级', signInLabel: '签到', proxies: '代理', userInfo: '用户信息', cancel: '取消', confirm: '保存', }, pluginConfig: { title: '插件配置', save: '保存', close: '关闭', viewData: '查看数据', saving: '正在保存 {name} 配置...', saveSuccess: '插件 {name} 配置已保存', saveFailed: '插件 {name} 配置保存失败:{message}', }, pluginData: { title: '插件数据', save: '保存', close: '关闭', }, pluginMarketSetting: { title: '插件市场设置', repoUrl: '插件仓库地址', repoPlaceholder: '格式:https://github.com/jxxghp/MoviePilot-Plugins/,https://github.com/xxxx/xxxxxx/', repoHint: '多个地址使用换行分隔,仅支持Github仓库', close: '关闭', save: '保存', saveSuccess: '插件仓库保存成功', saveFailed: '插件仓库保存失败:{message}!', }, userAuth: { title: '用户认证', codeLabel: '认证码', codePlaceholder: '请输入认证码', authBtn: '开始认证', closeBtn: '关闭', selectSite: '选择认证站点', selectSiteRequired: '请选择认证站点!', siteConfigNotExist: '站点配置不存在!', fieldRequired: '请输入{name}!', authSuccess: '用户认证成功,请重新登录!', authFailed: '认证失败:{message}', }, transferQueue: { title: '整理队列', name: '名称', type: '类型', state: '状态', progress: '进度', startTime: '开始时间', speedTitle: '速度', pathTitle: '路径', sizeTitle: '大小', waitingState: '等待中', runningState: '正在整理', finishedState: '完成', failedState: '失败', cancelledState: '已取消', noTasks: '没有正在整理的任务', processing: '请稍候 ...', stopAll: '全部停止', startAll: '全部开始', refresh: '刷新', close: '关闭', processingFile: '正在整理', overallProgress: '整体进度', currentFileProgress: '当前文件进度', processingStatus: '整理中', }, reorganize: { title: '整理', sourceTitle: '源文件', targetTitle: '目标文件', processingTitle: '处理中', confirmTitle: '确认', selectFile: '选择文件', selectTarget: '选择目标', selectMediaType: '选择媒体类型', movie: '电影', tv: '电视剧', selectTmdbId: '选择TMDB ID', selectMediaInfo: '选择媒体信息', selectTargetPath: '选择目标路径', selectTargetDir: '选择目标目录', selectFileName: '选择文件名', confirmMoving: '请确认移动!', sourceLabel: '源文件:', targetLabel: '目标目录:', filenameLabel: '文件名:', close: '关闭', next: '下一步', previous: '上一步', confirm: '确认', manualTitle: '手动整理', multipleItemsTitle: '共 {count} 项', singleItemTitle: '{path}', targetStorage: '目的存储', targetStorageHint: '整理目的存储', transferType: '整理方式', transferTypeHint: '文件操作整理方式', targetPath: '目的路径', targetPathHint: '整理目的路径,留空将自动匹配', targetPathPlaceholder: '留空自动', mediaType: '类型', mediaTypeHint: '文件的媒体类型', tmdbId: 'TheMovieDb编号', doubanId: '豆瓣编号', mediaIdHint: '按名称查询媒体编号,留空自动识别', mediaIdPlaceholder: '留空自动识别', episodeGroup: '剧集组编号', episodeGroupHint: '指定剧集组', episodeGroupPlaceholder: '手动查询剧集组', season: '季', seasonHint: '第几季', episodeDetail: '集', episodeDetailHint: '集数或范围,如1或1,2', episodeDetailPlaceholder: '起始集,终止集', episodeFormat: '集数定位', episodeFormatHint: '使用{ep}定位文件名中的集数部分以辅助识别', episodeFormatPlaceholder: '使用{ep}定位集数', episodeOffset: '集数偏移', episodeOffsetHint: '集数偏移运算,如-10或EP*2', episodeOffsetPlaceholder: '如-10', episodePart: '指定Part', episodePartHint: '指定Part,如part1', episodePartPlaceholder: '如part1', minFileSize: '最小文件大小(MB)', minFileSizeHint: '只整理大于最小文件大小的文件', typeFolderOption: '按类型分类', typeFolderHint: '整理时目的路径下按媒体类型添加子目录', categoryFolderOption: '按类别分类', categoryFolderHint: '整理时在目的路径下按媒体类别添加子目录', scrapeOption: '刮削元数据', scrapeHint: '整理完成后自动刮削元数据', fromHistoryOption: '复用历史识别信息', fromHistoryHint: '使用历史整理记录中已识别的媒体信息', addToQueue: '加入整理队列', reorganizeNow: '立即整理', auto: '自动', processing: '正在处理 ...', successMessage: '文件 {name} 已加入整理队列!', }, subscribeEdit: { titleDefault: '默认订阅规则', titleEdit: '编辑订阅', seasonFormat: '第 {number} 季', tabs: { basic: '基础', advance: '进阶', }, searchKeyword: '搜索关键词', searchKeywordHint: '指定搜索站点时使用的关键词', totalEpisode: '总集数', totalEpisodeHint: '剧集总集数', startEpisode: '开始集数', startEpisodeHint: '开始订阅集数', quality: '质量', qualityHint: '订阅资源质量', resolution: '分辨率', resolutionHint: '订阅资源分辨率', effect: '特效', effectHint: '订阅资源特效', subscribeSites: '订阅站点', subscribeSitesHint: '订阅的站点范围,不选使用系统设置', downloader: '下载器', downloaderHint: '指定该订阅使用的下载器', savePath: '保存路径', savePathHint: '指定该订阅的下载保存路径,留空自动使用设定的下载目录', bestVersion: '洗版', bestVersionHint: '根据洗版优先级进行洗版订阅', searchImdbid: '使用 ImdbID 搜索', searchImdbidHint: '开使用 ImdbID 精确搜索资源', showEditDialog: '订阅时编辑更多规则', showEditDialogHint: '添加订阅时显示此编辑订阅对话框', include: '包含(关键字、正则式)', includeHint: '包含规则,支持正则表达式', exclude: '排除(关键字、正则式)', excludeHint: '排除规则,支持正则表达式', filterGroups: '优先级规则组', filterGroupsHint: '按选定的过滤规则组对订阅进行过滤', episodeGroup: '指定剧集组', episodeGroupHint: '按特定剧集组识别和刮削', season: '指定季', seasonHint: '指定任意季订阅', mediaCategory: '自定义类别', mediaCategoryHint: '指定类别名称,留空自动识别', customWords: '自定义识别词', customWordsHint: '只对该订阅使用的识别词', customWordsPlaceholder: '屏蔽词\n被替换词 => 替换词\n前定位词 <> 后定位词 >> 集偏移量(EP)\n被替换词 => 替换词 && 前定位词 <> 后定位词 >> 集偏移量(EP)\n其中替换词支持格式:{ tmdbid/doubanid=xxx;type=movie/tv;s=xxx;e=xxx } 直接指定TMDBID/豆瓣ID识别,其中s、e为季数和集数(可选)', cancelSubscribe: '取消订阅', save: '保存', cancelSubscribeConfirm: '是否确认取消订阅?', }, subscribeFiles: { title: '已下载文件', noFilesMessage: '暂无文件', close: '关闭', downloadTab: '下载文件', libraryTab: '媒体库文件', episodeColumn: '集', torrentColumn: '种子', fileColumn: '文件', itemsPerPage: '每页条数', pageText: '{0}-{1} 共 {2} 条', loadingText: '加载中...', noData: '没有数据', season: '第 {number} 季', }, subscribeHistory: { title: '{type}订阅历史', resubscribe: '重新订阅', resubscribeMovie: '正在重新订阅 {name}...', resubscribeTv: '正在重新订阅 {name} 第 {season} 季...', season: '第 {season} 季', noData: '没有已完成的订阅', }, siteUserData: { title: '站点用户数据', updateTime: '更新时间', username: '用户名', uploadTitle: '上传量', uploadTotal: '总上传量', downloadTitle: '下载量', downloadTotal: '总下载量', seedingTitle: '做种数', seedingCount: '总做种数', seedingSize: '总做种体积', userLevel: '用户等级', msgCount: '未读消息', inviteCount: '邀请数', bonus: '积分', ratio: '分享率', joinTime: '加入时间', trafficHistory: '历史流量', seedingDistribution: '做种分布', volumeTitle: '体积', countTitle: '数量:', noData: '无', refreshing: '正在刷新站点数据...', close: '关闭', }, siteResource: { browseTitle: '浏览 - {name}', searchKeyword: '搜索关键字', resourceCategory: '资源分类', search: '搜索', itemsPerPage: '每页条数', noData: '没有数据', loading: '加载中...', titleColumn: '标题', timeColumn: '时间', sizeColumn: '大小', seedersColumn: '做种', peersColumn: '下载', viewDetails: '查看详情', downloadTorrent: '下载种子文件', pageText: '{0}-{1} 共 {2} 条', }, forkSubscribe: { title: '复制订阅', selectSubscriber: '选择复制目标', overwriteExisting: '覆盖现有订阅', overwriteExistingHint: '目标用户已存在该订阅时,是否覆盖', confirm: '确认', cancel: '取消', }, }, file: { newFolder: '新建文件夹', autoRecognizeName: '自动识别名称', createFolder: '创建文件夹', fileName: '文件名', fileSize: '文件大小', fileType: '文件类型', lastModified: '修改时间', actions: '操作', rename: '重命名', delete: '删除', confirmFileDelete: '确认删除', upload: '上传', download: '下载', preview: '预览', selectAll: '全选', deselectAll: '取消全选', moveUp: '返回上一级', sortByName: '按名称排序', sortByTime: '按时间排序', currentName: '当前名称', newName: '新名称', includeSubfolders: '自动重命名目录内所有媒体文件', emptyFolder: '空文件夹', noFilesInFolder: '该文件夹内没有文件', autoRecognize: '自动识别名称', directoryTree: '目录树', rootDirectory: '根目录', noDirectories: '没有可用的目录', directory: '目录', file: '文件', size: '大小', modifyTime: '修改时间', noFiles: '没有目录或文件', emptyDirectory: '空目录', confirmDelete: '是否确认删除{type} {name}?', confirmBatchDelete: '是否确认删除选中的 {count} 个项目?', deleting: '正在删除 {name}...', recognize: '识别', recognizing: '正在识别 {path}...', recognizeFailed: '{path} 识别失败!', scrape: '刮削', scraping: '正在刮削 {path}...', scrapeCompleted: '{path} 削刮完成!', confirmScrape: '是否确认刮削 {path}?', confirmBatchScrape: '是否确认刮削选中的 {count} 项?', renaming: '正在重命名 {name}...', renamingAll: '正在重命名 {path} 及目录内所有文件...', close: '关闭', loadingDirectoryStructure: '加载目录结构...', reorganize: '整理', }, person: { alias: '别名:', credits: '参演作品', biography: '个人简介', birthday: '出生日期', placeOfBirth: '出生地', }, error: { title: '出错啦!', networkError: '无法获取到媒体信息,请检查网络连接。', serverError: '服务器错误,请稍后重试。', notFound: '找不到请求的资源。', }, plugin: { sort: { popular: '热门', name: '插件名称', author: '作者', repository: '插件仓库', latest: '最新发布', }, installingPlugin: '正在安装插件...', installing: '正在安装 {name} v{version} ...', installSuccess: '插件 {name} 安装成功!', installFailed: '插件 {name} 安装失败:{message}', filterPlugins: '过滤插件', name: '名称', hasNewVersion: '有新版本', running: '运行中', author: '作者', label: '标签', repository: '仓库', sortTitle: '排序', filter: '过滤:{name}', noMatchingContent: '没有找到匹配的内容', pleaseInstallFromMarket: '请从插件市场安装插件', allPluginsInstalled: '所有插件已安装', searchPlugins: '搜索插件', searchPlaceholder: '按插件名称或描述搜索', uninstalling: '正在卸载 {name} ...', uninstallSuccess: '插件 {name} 卸载成功!', uninstallFailed: '插件 {name} 卸载失败:{message}', updating: '正在更新 {name} ...', updateSuccess: '插件 {name} 更新成功!', updateFailed: '插件 {name} 更新失败:{message}', noPlugins: '没有安装插件', installed: '已安装', notInstalled: '未安装', hasUpdate: '有更新', configuring: '配置', enable: '启用', disable: '禁用', settings: '设置', projectHome: '项目主页', updateHistory: '更新说明', installToLocal: '安装到本地', totalDownloads: '共 {count} 次下载', viewData: '查看数据', update: '更新', reset: '重置', uninstall: '卸载', viewLogs: '查看日志', authorHome: '作者主页', confirmUninstall: '是否确认卸载插件 {name}?', confirmReset: '此操作将恢复插件 {name} 的默认设置,并清除所有相关数据,确定要继续吗?', resetSuccess: '插件 {name} 数据已重置', resetFailed: '插件 {name} 重置失败:{message}', updateHistoryTitle: '{name} 更新说明', updateToLatest: '更新到最新版本', updatingTo: '更新 {name} 到 {version} 版本...', folderNameEmpty: '文件夹名称不能为空', folderExists: '文件夹已存在', folderCreateSuccess: '文件夹创建成功', folderRenameSuccess: '文件夹重命名成功', folderRenameFailed: '重命名文件夹失败', folderDeleteSuccess: '文件夹删除成功', folderDeleteFailed: '删除文件夹失败', removeFromFolderSuccess: '插件已移出文件夹', operationFailed: '操作失败', saveFolderConfigFailed: '保存文件夹配置失败', newFolder: '新建文件夹', folderName: '文件夹名称', cancel: '取消', create: '创建', clone: '分身', cloneTitle: '创建插件分身', cloneSubtitle: '为 {name} 创建独立的分身实例', cloneFeature: '插件分身功能', cloneDescription: '创建插件的独立副本,拥有独立的配置和数据,适用于多账号、测试环境等场景', suffix: '分身后缀', suffixPlaceholder: '例如:Test、Backup、Site1', suffixHint: '用于区分分身的唯一标识,只能包含英文字母和数字', suffixRequired: '分身后缀不能为空', suffixFormatError: '只能包含英文字母和数字', suffixLengthError: '长度不能超过20个字符', cloneName: '分身名称', cloneNamePlaceholder: '例如:自动备份 测试版', cloneNameHint: '分身插件的显示名称(可选)', cloneDefaultName: '{name} 分身', cloneDescriptionLabel: '分身描述', cloneDescriptionPlaceholder: '描述这个分身的用途和特点...', cloneDescriptionHint: '详细描述分身插件的用途(可选)', cloneDefaultDescription: '{description} (分身版本)', cloneVersion: '版本号', cloneVersionPlaceholder: '例如:1.0、2.1.0', cloneVersionHint: '自定义分身插件的版本号(可选)', cloneIcon: '图标URL', cloneIconPlaceholder: 'https://example.com/icon.png', cloneIconHint: '自定义分身插件的图标(可选)', cloneNotice: '分身插件创建后默认为禁用状态,需要手动配置启用。分身后缀一旦确定无法修改。', createClone: '创建分身', cloning: '正在创建 {name} 的分身...', cloneSuccess: '插件分身 {name} 创建成功!', cloneFailed: '插件分身创建失败:{message}', cloneFailedGeneral: '插件分身创建失败', logTitle: '插件日志', quickAccess: '快速访问', tapToOpen: '点击返回主界面', noPluginsWithPage: '暂无可用插件', recentlyUsed: '最近使用', allPlugins: '所有插件', noRecentPlugins: '无', }, profile: { disableOtpWithPasskeyError: '请先删除所有通行密钥后再清除身份验证器!', personalInfo: '个人信息', uploadNewAvatar: '上传新头像', avatarFormatError: '上传的文件不符合要求,请重新选择头像', avatarSizeError: '文件大小不得大于800KB', avatarUploadSuccess: '新头像上传成功,待保存后生效!', resetAvatarSuccess: '已重置为默认头像,待保存后生效!', restoreAvatarSuccess: '已还原当前使用头像!', savingInProgress: '正在保存中,请稍后...', usernameRequired: '用户名不能为空', passwordMismatch: '两次输入的密码不一致', usernameChangeSuccess: '【{oldName}】更名【{newName}】,用户信息保存成功!', saveSuccess: '用户信息保存成功!', saveFailedWithNameChange: '【{oldName}】更名【{newName}】,信息保存失败:{message}!', saveFailed: '用户信息保存失败:{message}!', nickname: '昵称', nicknamePlaceholder: '显示昵称,优先于用户名显示', accountBinding: '账号绑定', wechatUser: '微信用户', telegramUser: 'Telegram用户', slackUser: 'Slack用户', discordUser: 'Discord用户', vocechatUser: 'VoceChat用户', synologychatUser: 'SynologyChat用户', doubanUser: '豆瓣用户', setupAuthenticator: '设置身份验证器', authenticatorManagement: '身份验证器管理', authenticatorEnabled: '您已启用身份验证器双重验证', clearAuthenticatorTip: '如需设置新的身份验证器,请先清除当前配置。', clearAuthenticator: '清除身份验证器', enableTwoFactor: '开启双重验证', disableTwoFactor: '关闭双重验证', setupMfa: '设置双重验证', enableMfa: '开启双重验证', useAuthenticator: '使用身份验证器', usePasskey: '使用通行密钥', enabled: '已启用', keysCount: '{count} 个密钥', passkeyManagement: '通行密钥管理', registerNewPasskey: '注册新通行密钥', passkeyDescription: '通行密钥可以让您无需密码即可快速安全地登录。', passkeyAppDescription: '通行密钥是一种更简单、更安全的登录方式,可以替代密码进行登录。您可以使用 iCloud 钥匙串、Bitwarden 等支持通行密钥的应用程序或硬件密钥完成验证。', passkeyName: '通行密钥名称', passkeyNamePlaceholder: '例如:iPhone、Windows Hello', registerPasskey: '注册通行密钥', createdAt: '创建于', lastUsedAt: '最后使用时间', noPasskeys: '您还没有注册任何通行密钥', passkeyNameRequired: '请输入通行密钥名称', passkeyRegisterSuccess: '通行密钥注册成功', passkeyRegisterFailed: '注册失败', passkeyRegisterCancelled: '注册被取消', passkeyDeleteSuccess: '通行密钥已删除', passkeyDeleteFailed: '删除失败', deletePasskey: '删除通行密钥', passkeyDomainWarning: '通行密钥(PassKey)的可用性与 {domain} 紧密相关。在公网环境下,请务必在“基础设置”中配置正确的访问域名。域名变更或配置错误将导致通行密钥无法使用。', otpRequiredForPasskey: '为了安全起见,您必须先启用 {otp} 验证码,然后才能注册通行密钥。这是为了防止在域名配置变动导致 PassKey 失效时,您仍能通过 OTP 码登录账户。', accessDomain: '访问域名', otpAuthenticator: 'OTP 身份验证器', otpGenerateFailed: '获取otp uri失败:{message}!', otpDisableSuccess: '关闭登录双重验证成功!', otpDisableFailed: '关闭otp失败:{message}!', otpCodeRequired: '请填写6位验证码', otpEnableSuccess: '开启登录双重验证成功!', otpEnableFailed: '开启otp失败:{message}!', otpDisableRestrictedByPasskey: '您已注册通行密钥,请先删除所有通行密钥再关闭 OTP 验证。', confirmToDisableOtp: '为了安全起见,关闭双重验证需要验证您的登录密码。', confirmToDeletePasskey: '为了安全起见,删除通行密钥需要验证您的登录密码。', authenticatorAppDescription: '使用 Google Authenticator、Microsoft Authenticator、Authy 或 1Password 等验证器应用扫描二维码,获取 6 位验证码。', secretKeyTip: '如果您在使用二维码时遇到困难,请在您的应用程序中选择手动输入以上代码。', enterVerificationCode: '输入验证码以确认开启双重验证', avatarFormatTip: '允许 JPG、PNG、GIF、WEBP 格式, 最大尺寸 800KB。', }, transferHistory: { title: '转移历史', searchPlaceholder: '搜索转移记录', titleColumn: '标题', pathColumn: '路径', modeColumn: '转移方式', sizeColumn: '大小', dateColumn: '时间', statusColumn: '状态', actionsColumn: '操作', seasonEpisode: '季集/类别', transferQueue: '转移队列', groupMode: '分组模式', listMode: '列表模式', deleteConfirm: '确认删除 {title} {seasons}{episodes} ?', deleteConfirmBatch: '确认删除 {count} 条记录 ?', deleteRecordOnly: '仅删除转移记录', deleteSourceOnly: '删除转移记录和源文件', deleteDestOnly: '删除转移记录和媒体库文件', deleteAll: '删除转移记录、源文件和媒体库文件', transferMode: { copy: '复制', move: '移动', link: '硬链接', softlink: '软链接', rclone_copy: 'Rclone复制', rclone_move: 'Rclone移动', }, status: { success: '成功', failed: '失败', unknown: '未知', }, noData: '没有数据', loading: '加载中...', pageSize: '每页条数', pageInfo: '{begin} - {end} / {total}', actions: { redo: '重新整理', delete: '删除', }, progress: { processing: '处理中', pleaseWait: '请稍候...', }, table: { emptyTitle: '操作', }, }, customRule: { error: { emptyIdName: '规则ID和规则名称不能为空', idOccupied: '当前规则ID已被内置规则占用', nameOccupied: '当前规则名称已被内置规则占用', idExists: '规则ID【{id}】已存在', nameExists: '规则名称【{name}】已存在', }, title: '{id} - 配置', field: { ruleId: '规则ID', ruleName: '规则名称', include: '包含', exclude: '排除', sizeRange: '资源体积(MB)', seeders: '做种人数', publishTime: '发布时间(分钟)', }, placeholder: { ruleId: '必填;不可与其他规则ID重名', ruleName: '必填;不可与其他规则名称重名', include: '关键字/正则表达式', exclude: '关键字/正则表达式', sizeRange: '0/1-10', seeders: '0/1-10', publishTime: '0/1-10', }, hint: { ruleId: '字符与数字组合,不能含空格', ruleName: '使用别名便于区分规则', include: '必须包含的关键字或正则表达式,多个值使用|分隔', exclude: '不能包含的关键字或正则表达式,多个值使用|分隔', sizeRange: '最小资源文件体积或体积范围(剧集计算单集平均大小)', seeders: '最小做种人数或做种人数范围', publishTime: '距离资源发布的最小时间间隔或时间区间', }, action: { confirm: '确定', }, }, downloader: { title: '下载器', name: '名称', type: '类型', enabled: '启用', customTypeHint: '自定义下载器类型,用于插件等场景', default: '默认', host: '地址', username: '用户名', password: '密码', category: '自动分类管理', sequentail: '顺序下载', force_resume: '强制继续', first_last_piece: '优先首尾文件', saveSuccess: '下载器设置保存成功', saveFailed: '下载器设置保存失败', nameRequired: '不能为空,且不能重名', nameDuplicate: '名称已存在', defaultChanged: '存在默认下载器,已替换', hostRequired: '地址不能为空', usernameRequired: '用户名不能为空', passwordRequired: '密码不能为空', pathMapping: '路径映射', pathMappingRequired: '路径不能为空', pathMappingError: '必须以 / 开头', storagePath: '存储路径', downloadPath: '下载路径', }, filterRule: { title: '过滤规则', groupName: '规则组名称', priority: '优先级', rules: '规则', add: '添加规则', import: '导入规则', share: '分享规则', save: '保存规则', nameRequired: '规则组名称不能为空', nameDuplicate: '规则组名称已存在', importSuccess: '规则导入成功', importFailed: '规则导入失败', shareSuccess: '规则已复制到剪贴板', shareFailed: '规则复制失败', mediaType: '媒体类型', category: '媒体类别', mediaTypeItems: { movie: '电影', tv: '电视剧', anime: '动漫', collection: '合集', unknown: '未知', }, }, mediaserver: { type: '类型', customTypeHint: '自定义媒体服务器类型,用于插件等场景', enableMediaServer: '启用媒体服务器', nameRequired: '必填,不可重名', serverAlias: '媒体服务器的别名', host: '地址', hostPlaceholder: 'http(s)://ip:port', hostHint: '服务端地址,格式:http(s)://ip:port', playHost: '外网播放地址', playHostPlaceholder: 'http(s)://domain:port', playHostHint: '跳转播放页面使用的地址,格式:http(s)://domain:port', apiKey: 'API密钥', embyApiKeyHint: 'Emby设置->高级->API密钥中生成的密钥', jellyfinApiKeyHint: 'Jellyfin设置->高级->API密钥中生成的密钥', plexToken: 'X-Plex-Token', plexTokenHint: '浏览器F12->网络,从Plex请求URL中获取的X-Plex-Token', username: '用户名', usernameHint: '登录用户名', password: '密码', syncLibraries: '同步媒体库', syncLibrariesHint: '只有选中的媒体库才会被同步', nameExists: '【{name}】已存在,请替换为其他名称', hostRequired: '地址不能为空', apiKeyRequired: 'API密钥不能为空', tokenRequired: 'Token不能为空', usernameRequired: '用户名不能为空', passwordRequired: '密码不能为空', }, bangumi: { category: '类别', sort: '排序', year: '年份', cat: { other: '其他', tv: 'TV', ova: 'OVA', movie: 'Movie', web: 'WEB', }, sortType: { rank: '排名', date: '日期', }, }, tmdb: { type: '类型', sort: '排序', genre: '风格', language: '语言', rating: '评分', sortType: { popularityDesc: '热度降序', popularityAsc: '热度升序', releaseDateDesc: '上映日期降序', releaseDateAsc: '上映日期升序', firstAirDateDesc: '首播日期降序', firstAirDateAsc: '首播日期升序', voteAverageDesc: '评分降序', voteAverageAsc: '评分升序', time: '最新', count: '热门', rating: '评分', }, genreType: { action: '动作', adventure: '冒险', animation: '动画', comedy: '喜剧', crime: '犯罪', documentary: '纪录片', drama: '剧情', family: '家庭', fantasy: '奇幻', history: '历史', horror: '恐怖', music: '音乐', mystery: '悬疑', romance: '爱情', scienceFiction: '科幻', tvMovie: '电视电影', thriller: '惊悚', war: '战争', western: '西部', actionAdventure: '动作冒险', kids: '儿童', news: '新闻', reality: '真人秀', sciFiFantasy: '科幻奇幻', soap: '肥皂剧', talk: '戏剧', warPolitics: '战争政治', }, languageType: { zh: '中文', en: '英语', ja: '日语', ko: '韩语', fr: '法语', de: '德语', es: '西班牙语', it: '意大利语', ru: '俄语', pt: '葡萄牙语', ar: '阿拉伯语', hi: '印地语', th: '泰语', }, }, douban: { type: '类型', sort: '排序', genre: '风格', zone: '地区', year: '年代', sortType: { comprehensive: '综合排序', releaseDate: '首播时间', recentHot: '近期热度', highScore: '高分优先', }, genreType: { comedy: '喜剧', romance: '爱情', action: '动作', scienceFiction: '科幻', animation: '动画', mystery: '悬疑', crime: '犯罪', thriller: '惊悚', adventure: '冒险', music: '音乐', history: '历史', fantasy: '奇幻', horror: '恐怖', war: '战争', biography: '传记', musical: '歌舞', martialArts: '武侠', erotic: '情色', disaster: '灾难', western: '西部', documentary: '纪录片', shortFilm: '短片', }, zoneType: { chinese: '华语', europeanAmerican: '欧美', korean: '韩国', japanese: '日本', mainlandChina: '中国大陆', usa: '美国', hongKong: '中国香港', taiwan: '中国台湾', uk: '英国', france: '法国', germany: '德国', italy: '意大利', spain: '西班牙', india: '印度', thailand: '泰国', russia: '俄罗斯', canada: '加拿大', australia: '澳大利亚', ireland: '爱尔兰', sweden: '瑞典', brazil: '巴西', denmark: '丹麦', }, yearType: { '2020s': '2020年代', '2010s': '2010年代', '2000s': '2000年代', '1990s': '90年代', '1980s': '80年代', '1970s': '70年代', '1960s': '60年代', }, }, directory: { alias: '目录别名', mediaType: '媒体类型', mediaCategory: '媒体类别', resourceStorage: '资源存储', resourceDirectory: '资源目录', sortByType: '按类型分类', sortByCategory: '按类别分类', autoTransfer: '自动整理', monitorMode: '监控模式', libraryStorage: '媒体库存储', libraryDirectory: '媒体库目录', transferType: '整理方式', transferTypeHint: '文件操作整理方式,硬链接节省空间,复制更安全', overwriteMode: '覆盖模式', overwriteModeHint: '当目标文件已存在时的处理方式', smartRename: '智能重命名', scrapingMetadata: '刮削元数据', sendNotification: '发送通知', noTransfer: '不整理', downloaderMonitor: '下载器监控', directoryMonitor: '目录监控', manualTransfer: '手动整理', performanceMode: '性能模式', compatibilityMode: '兼容模式', pleaseSelectStorage: '请选择存储', pleaseSelectLibraryStorage: '请选择媒体库存储', pleaseSelectDownloadStorage: '请选择下载存储', noSupportedTransferType: '没有支持的整理方式', never: '从不', always: '总是', byFileSize: '按文件大小', keepLatestOnly: '仅保留最新', }, validators: { required: '此项为必填项', number: '请输入数字', }, folder: { settingAppearance: '设置外观', rename: '重命名', deleteFolder: '删除文件夹', folderNameCannotBeEmpty: '文件夹名称不能为空', confirmDeleteFolder: '确定要删除文件夹 "{folderName}" 吗?文件夹中的插件将移回主列表。', folderSettingsSaved: '文件夹设置已保存', renameFolder: '重命名文件夹', folderName: '文件夹名称', folderAppearanceSettings: '文件夹外观设置', showFolderIcon: '显示文件夹图标', icon: '图标', iconColor: '图标颜色', backgroundGradient: '背景渐变', customBackgroundImageURL: '自定义背景图片URL(可选)', customBackgroundImageHint: '支持网络图片URL,留空则使用渐变背景', pluginCount: '{count} 个插件', }, setupWizard: { title: '欢迎使用 MoviePilot !', subtitle: '按向导完成配置,即刻开始使用。', completed: '配置向导完成!', failed: '配置向导失败,请重试', complete: '完成配置', loading: '正在加载配置数据...', testing: '正在测试', connectivityTestSuccess: '连通性测试通过', connectivityTestFailed: '连通性测试失败', testingStorage: '正在测试存储目录', checkingStorage: '检查存储目录连通性', storageTestFailed: '存储目录测试失败', testingDownloader: '正在测试下载器', checkingDownloader: '检查下载器连通性', downloaderTestFailed: '下载器测试失败', downloaderNotSelected: '未选择下载器', unsupportedDownloaderType: '不支持的下载器类型: {type}', testingMediaServer: '正在测试媒体服务器', checkingMediaServer: '检查媒体服务器连通性', mediaServerTestFailed: '媒体服务器测试失败', mediaServerNotSelected: '未选择媒体服务器', unsupportedMediaServerType: '不支持的媒体服务器类型: {type}', testingNotification: '正在测试消息通知', checkingNotification: '检查消息通知连通性', notificationTestFailed: '消息通知测试失败', notificationNotSelected: '未选择通知类型', unsupportedNotificationType: '不支持的通知类型: {type}', testFailedHint: '请检查配置是否正确,修改后可以重新测试', saveStepFailed: '保存步骤设置失败', basicSettingsSaved: '基础设置保存成功', saveBasicSettingsFailed: '保存基础设置失败', storageSettingsSaved: '存储设置保存成功', saveStorageSettingsFailed: '保存存储设置失败', downloaderSettingsSaved: '下载器设置保存成功', saveDownloaderSettingsFailed: '保存下载器设置失败', mediaServerSettingsSaved: '媒体服务器设置保存成功', saveMediaServerSettingsFailed: '保存媒体服务器设置失败', notificationSettingsSaved: '通知设置保存成功', saveNotificationSettingsFailed: '保存通知设置失败', preferenceSettingsSaved: '偏好设置保存成功', savePreferenceSettingsFailed: '保存偏好设置失败', passwordUpdateSuccess: '密码更新成功', passwordUpdateFailed: '密码更新失败', userCreateSuccess: '用户创建成功', basic: { title: '基础设置', description: '设置访问域名、用户名密码和网络配置', appDomain: '访问域名', appDomainHint: '用于发送通知时,添加快捷跳转地址', wallpaper: '背景壁纸', wallpaperHint: '选择登录页面背景来源', recognizeSource: '识别数据源', recognizeSourceHint: '设置默认媒体信息识别数据源', apiToken: 'API 令牌', apiTokenHint: '访问MoviePilot API 需要的访问令牌,请记录下来以便后续使用', currentUserHint: '当前用户,不可修改', passwordOptionalHint: '留空表示不修改密码', confirmPasswordHint: '确认新密码', apiTokenRequired: 'API Token不能为空', }, storage: { title: '存储', description: '配置下载目录和媒体库目录', info: '存储配置说明', infoDesc: '配置本地存储目录,用于下载和媒体库管理', downloadPath: '下载目录', downloadPathHint: '设置下载文件的存储路径', libraryPath: '媒体库目录', libraryPathHint: '设置媒体文件的存储路径', downloadPathRequired: '下载目录不能为空', libraryPathRequired: '媒体库目录不能为空', }, downloader: { title: '下载器', description: '配置下载器', info: '下载器配置说明', infoDesc: '配置下载器用于下载资源,可选择qBittorrent或Transmission', type: '下载器类型', typeHint: '选择要使用的下载器类型', name: '下载器名称', nameHint: '为下载器设置一个名称', qbittorrentConfig: 'qBittorrent 配置', transmissionConfig: 'Transmission 配置', host: '服务器地址', username: '用户名', password: '密码', downloadPath: '下载路径', }, mediaServer: { title: '媒体服务器', description: '配置媒体服务器', info: '媒体服务器配置说明', infoDesc: '配置媒体服务器用于媒体库管理,可选择Emby、Jellyfin或Plex等', type: '媒体服务器类型', typeHint: '选择要使用的媒体服务器类型', name: '服务器名称', nameHint: '为媒体服务器设置一个名称', embyConfig: 'Emby 配置', jellyfinConfig: 'Jellyfin 配置', plexConfig: 'Plex 配置', host: '服务器地址', apiKey: 'API 密钥', token: '访问令牌', }, notification: { title: '通知', description: '配置通知渠道', info: '通知配置说明', infoDesc: '配置通知渠道用于接收系统消息(可选)', type: '通知类型', typeHint: '选择要使用的通知渠道类型', name: '通知名称', nameHint: '为通知渠道设置一个名称', telegramConfig: 'Telegram 配置', emailConfig: '邮件配置', botToken: '机器人令牌', chatId: '聊天ID', smtpServer: 'SMTP 服务器', smtpPort: 'SMTP 端口', senderEmail: '发送邮箱', senderPassword: '发送密码', receiverEmail: '接收邮箱', }, preferences: { title: '资源偏好', description: '设置资源下载偏好', info: '资源偏好说明', infoDesc: '设置资源下载的偏好,系统将根据这些偏好自动选择最佳资源', quality: '质量偏好', qualityHint: '选择偏好的视频质量', subtitle: '字幕偏好', subtitleHint: '选择偏好的字幕类型', resolution: '分辨率偏好', resolutionHint: '选择偏好的视频分辨率', presetRules: '预设规则', detailedConfig: '详细配置', quickPresets: '快速预设', quickPresetsDesc: '选择预设配置,系统将自动应用对应的规则', personalizationOptions: '个性化选项', personalizationOptionsDesc: '根据您的需求调整规则', excludeDolbyVision: '排除杜比视界', excludeDolbyVisionHint: '选中后规则中将排除杜比视界资源', excludeBluray: '排除蓝光原盘', excludeBlurayHint: '选中后规则中将排除蓝光原盘资源', presets: { '4k-enthusiast': { name: '4K发烧友', description: '追求最高画质,优先4K', }, 'balanced': { name: '平衡模式', description: '画质与存储空间的平衡选择', }, 'space-saver': { name: '节省空间', description: '优先较小文件,节省存储空间', }, 'free-priority': { name: '免费优先', description: '优先免费资源,其它的没有要求', }, }, }, }, }