{
"cli.about": "Emby 流媒体代理:按 TOML 配置运行前端、后端或双网关",
"cli.arg.lang": "界面语言:en(默认,英文)或 zh(简体中文);影响配置向导与 --help",
"cli.config.about": "交互式编辑/生成 TOML 配置(提示语随 --lang 切换)",
"cli.config.show.about": "列出当前目录下合法配置并查看其一(默认遮蔽密钥)",
"cli.config.template.about": "交互生成入门 TOML(先写临时文件再原子替换)",
"cli.run.about": "启动 HTTP(S) 网关(须显式使用 run 子命令;无子命令时进程会直接退出)",
"cli.run.arg.config": "配置文件路径(config.toml)",
"cli.run.arg.ssl_cert_file": "覆盖配置中的 TLS 证书路径(PEM)",
"cli.run.arg.ssl_key_file": "覆盖配置中的 TLS 私钥路径(PEM)",
"cli.sub.help.about": "打印帮助信息(也可在各子命令后使用)",
"error.wizard_prefix": "配置向导",
"regex.error.invalid": "正则无效:{detail};请重试或修改表达式",
"regex.output.group": "捕获组 {idx}:{value}",
"regex.output.matches": "匹配:{value}",
"wizard.banner.subtitle": "交互式 TOML 配置向导,提示语随 --lang 切换",
"wizard.banner.title": "EmbyStream 配置向导",
"wizard.confirm.add_another_backend_node": "是否再添加一个 BackendNode?",
"wizard.confirm.add_backend_node": "是否添加 BackendNode?",
"wizard.confirm.add_path_rewrite_entry": "是否添加 PathRewrite 条目?",
"wizard.confirm.create_another_config": "是否再新建一份配置?",
"wizard.confirm.enable_path_rewrite_rule": "是否启用此 PathRewrite 规则?",
"wizard.confirm.open_regex_playground": "是否打开正则匹配演练场?",
"wizard.confirm.permanent_delete": "永久删除 {path}?",
"wizard.confirm.probe_emby_before_stream": "是否在推流前探测 Emby?",
"wizard.confirm.regex_playground_for_pattern": "是否为此 pattern 打开正则演练场?",
"wizard.confirm.show_secrets_plain": "是否以明文显示密钥?(他人可见屏幕时不安全)",
"wizard.confirm.write_config_disk": "是否将本配置写入磁盘?",
"wizard.display.auto_generated": "(已自动生成)",
"wizard.display.empty": "(空)",
"wizard.display.secret_masked": "· · ·",
"wizard.error.dual_must_differ_backend_port": "双模式下须与 Backend.listen_port 不同",
"wizard.error.dual_must_differ_frontend_port": "双模式下须与 Frontend.listen_port 不同",
"wizard.error.dual_port": "双模式:前端 listen_port {port} 不能与后端 listen_port 相同,请修改其一",
"wizard.error.file_exists": "该文件已存在,请换用其他名称",
"wizard.error.integer_invalid": "请输入有效整数",
"wizard.error.no_configs_to_copy": "没有可复制的配置文件",
"wizard.error.no_configs_to_delete": "没有可删除的配置文件",
"wizard.error.no_configs_to_edit": "没有可编辑的配置文件",
"wizard.error.no_configs_to_rename": "没有可重命名的配置文件",
"wizard.error.no_valid_toml_here": "当前目录下没有合法的 EmbyStream TOML 配置文件",
"wizard.error.non_negative_integer": "请输入有效的非负整数",
"wizard.error.port_range": "请输入 0~65535 之间的数字",
"wizard.error.regex_pattern_invalid": "正则 pattern 无效",
"wizard.error.target_exists": "目标已存在",
"wizard.error.value_required": "此项为必填",
"wizard.example.disk.description": "本地 NAS",
"wizard.example.file.fallback_mp4": "/mnt/media/fallback.mp4",
"wizard.example.host.stream_example": "stream.example.com",
"wizard.example.name.my_openlist": "MyOpenList",
"wizard.example.path.openlist_segment": "openlist",
"wizard.example.port.alist": "5244",
"wizard.example.problematic_clients": "yamby, hills, embytolocalplayer, Emby/",
"wizard.example.regex.openlist_path": "/openlist/.*",
"wizard.example.regex.path_rewrite_media": "^/media(/.*)$",
"wizard.example.regex_group_1": "$1",
"wizard.example.token.paste_here": "paste_token_here",
"wizard.example.toml.host_line": "host = \"stream.example.com\"",
"wizard.example.url.emby_https": "https://emby.example.com",
"wizard.example.url.lan_emby_host": "192.168.1.1:8096",
"wizard.example.url.lan_emby_http": "http://192.168.1.1:8096",
"wizard.example.url.local_emby": "http://127.0.0.1",
"wizard.example.url.stream_https": "https://stream.example.com",
"wizard.example.user_agent.mozilla": "Mozilla/5.0",
"wizard.field.allow_ua": "allow_ua",
"wizard.field.base_url": "base_url",
"wizard.field.check_file_existence": "check_file_existence",
"wizard.field.client_burst_speed_kbs": "client_burst_speed_kbs",
"wizard.field.client_speed_limit_kbs": "client_speed_limit_kbs",
"wizard.field.deny_ua": "deny_ua",
"wizard.field.description": "description",
"wizard.field.encipher_iv": "encipher_iv",
"wizard.field.encipher_key": "encipher_key",
"wizard.field.file": "file",
"wizard.field.file_name": "file_name",
"wizard.field.host": "host",
"wizard.field.idx": "idx",
"wizard.field.level": "level",
"wizard.field.listen_port": "listen_port",
"wizard.field.memory_mode": "memory_mode",
"wizard.field.mode": "mode",
"wizard.field.name": "name",
"wizard.field.password": "password",
"wizard.field.path": "path",
"wizard.field.pattern": "pattern",
"wizard.field.port": "port",
"wizard.field.prefix": "prefix",
"wizard.field.priority": "priority",
"wizard.field.problematic_clients": "problematic_clients",
"wizard.field.proxy_mode": "proxy_mode",
"wizard.field.query_param": "query_param",
"wizard.field.replacement": "replacement",
"wizard.field.root_path": "root_path",
"wizard.field.ssl_cert_file": "ssl_cert_file",
"wizard.field.ssl_key_file": "ssl_key_file",
"wizard.field.stream": "stream",
"wizard.field.stream_mode": "stream_mode",
"wizard.field.token": "token",
"wizard.field.type": "type",
"wizard.field.url": "url",
"wizard.field.url_mode": "url_mode",
"wizard.field.url_template": "url_template",
"wizard.field.user_agent": "user_agent",
"wizard.field.username": "username",
"wizard.field.video_missing_path": "video_missing_path",
"wizard.hint.press_enter_auto_generate": "(按 Enter 自动生成)",
"wizard.hint.stream_mode.backend": "backend:签名流网关 + 存储节点",
"wizard.hint.stream_mode.dual": "dual:两者兼有;frontend 与 backend 的 listen_port 必须不同",
"wizard.hint.stream_mode.frontend": "frontend:仅将客户端代理到 Emby",
"wizard.hint.webdav_url_mode_values": "path_join | query_path | url_template",
"wizard.internal.scheme_delimiter": "://",
"wizard.label.anti_reverse_proxy": "AntiReverseProxy",
"wizard.label.default_prefix": "默认:",
"wizard.label.example_prefix": "示例:",
"wizard.label.path_rewrite": "PathRewrite",
"wizard.menu.backend_nodes": "后端节点列表",
"wizard.menu.backend_section": "后端(Backend)区块",
"wizard.menu.change_backend_listen_port": "修改 Backend.listen_port",
"wizard.menu.change_frontend_listen_port": "修改 Frontend.listen_port",
"wizard.menu.copy": "复制",
"wizard.menu.delete": "删除",
"wizard.menu.done_save": "完成并保存",
"wizard.menu.edit_existing": "编辑已有配置",
"wizard.menu.edit_shared_group": "日志 / 通用 / Emby / UserAgent / Http2 / 回退",
"wizard.menu.frontend_section": "前端(Frontend)区块",
"wizard.menu.main": "主菜单",
"wizard.menu.new_config_file": "新建配置文件",
"wizard.menu.quit": "退出",
"wizard.menu.rename": "重命名",
"wizard.menu.select_file_copy": "选择要复制的文件",
"wizard.menu.select_file_delete": "选择要删除的文件",
"wizard.menu.select_file_display": "选择要查看的文件",
"wizard.menu.select_file_edit": "选择要编辑的文件",
"wizard.menu.select_file_rename": "选择要重命名的文件",
"wizard.msg.prefix.wrote": "已写入 ",
"wizard.msg.prefix.wrote_template": "已写入模板 ",
"wizard.msg.skipped_empty_pattern": "已跳过(pattern 为空)",
"wizard.msg.status.copied": "已复制",
"wizard.msg.status.deleted": "已删除",
"wizard.msg.status.discarded": "已放弃",
"wizard.msg.status.renamed": "已重命名",
"wizard.msg.status.saved": "已保存",
"wizard.no": "否",
"wizard.option.backend_type.direct_link": "DirectLink — 自定义 User-Agent 的纯 HTTP 拉取",
"wizard.option.backend_type.disk": "Disk — 本地文件系统根",
"wizard.option.backend_type.openlist": "OpenList — AList / OpenList HTTP API",
"wizard.option.backend_type.stream_relay": "StreamRelay — 307 将签名 /stream 转发到其他后端",
"wizard.option.backend_type.webdav_long": "WebDav — WebDAV 上游",
"wizard.option.memory.high": "高 — 更积极的缓存",
"wizard.option.memory.high_token": "高",
"wizard.option.memory.low": "低 — 缓存占用最小",
"wizard.option.memory.low_token": "低",
"wizard.option.memory.middle": "中 — 均衡(默认)",
"wizard.option.proxy_mode.proxy_long": "proxy — 服务端代拉上游",
"wizard.option.proxy_mode.redirect_long": "redirect — 客户端跟随 Location",
"wizard.option.stream_mode.backend": "后端(backend)",
"wizard.option.stream_mode.dual": "双模式(dual)",
"wizard.option.stream_mode.frontend": "前端(frontend)",
"wizard.option.ua_mode.allow": "allow — 仅列表中的 User-Agent 子串可通过",
"wizard.option.ua_mode.deny": "deny — 列表中的 User-Agent 子串会被拦截",
"wizard.placeholder.paren_none": "(无)",
"wizard.placeholder.question_mark": "?",
"wizard.placeholder.spaces_three": " ",
"wizard.prompt.alist_api_token": "AList API 令牌",
"wizard.prompt.alist_base_url": "AList 根地址(URL)",
"wizard.prompt.alist_port_if_missing": "URL 中未写端口时的 AList 端口",
"wizard.prompt.anti_reverse_reject_bad_host": "启用后若 Host 与信任主机不一致则拒绝请求",
"wizard.prompt.backend_listen_port_tcp": "后端网关 TCP 端口(若配置了证书则为 HTTPS)",
"wizard.prompt.backend_public_base_url": "客户端访问本后端时使用的公网根 URL",
"wizard.prompt.check_file_existence_true": "为 true 时在推流前向 Emby 校验资源是否存在",
"wizard.prompt.choose_config_section": "选择要修改的配置区块(↑ / ↓ 与 Enter)",
"wizard.prompt.choose_stream_mode_three": "选择 frontend、backend 或 dual(↑ / ↓ 与 Enter)",
"wizard.prompt.client_burst_kibs": "突发额度(KiB/s,0 表示默认 / 无)",
"wizard.prompt.client_speed_limit_kibs": "单客户端限速(KiB/s,0 表示不限)",
"wizard.prompt.direct_link_fetch_ua": "拉取上游时使用的 User-Agent 头",
"wizard.prompt.edit_which_part": "要编辑哪一部分",
"wizard.prompt.emby_api_token": "在控制台获取的 Emby API 访问令牌",
"wizard.prompt.emby_base_url": "Emby 服务器根地址(不要带末尾路径)按 Enter 默认为 http://127.0.0.1;可省略协议(如 127.0.0.1),将自动补全 http://",
"wizard.prompt.emby_http_port": "Emby HTTP 端口(若 url 已含端口可留空)",
"wizard.prompt.enable_anti": "启用 {ctx}?(Host 与信任主机不一致时拒绝)",
"wizard.prompt.encipher_iv_aes": "流签名用 AES IV(请保密)按 Enter 可自动生成 16 位大小写字母与数字;也可自行输入",
"wizard.prompt.encipher_key_aes": "流签名用 AES 密钥材料(请保密)按 Enter 可自动生成 16 位大小写字母与数字;也可自行输入",
"wizard.prompt.frontend_listen_port_tcp": "本进程监听、供前端客户端连接的 TCP 端口",
"wizard.prompt.log_level_tracing": "应用的 tracing 过滤级别(info / warn / debug / error)",
"wizard.prompt.log_prefix_optional": "日志文件名的可选前缀",
"wizard.prompt.log_root_path": "日志文件目录(若可创建则会在运行时创建)",
"wizard.prompt.memory_mode_explainer": "应用缓存占用提示(low / middle / high)",
"wizard.prompt.new_config_stream_mode": "选择 stream_mode:在临时文件生成无注释的起始 TOML,再原子写入你指定的文件名",
"wizard.prompt.new_file_name": "新文件名",
"wizard.prompt.new_file_name_example": "新文件名(例如 my.toml)",
"wizard.prompt.node_description_note": "可选说明(不参与路由)",
"wizard.prompt.node_log_label": "日志用短标签(建议唯一)",
"wizard.prompt.node_path_append": "拼在 base 后的路径段(不要求前导 /)",
"wizard.prompt.node_path_regex": "请求路径上的 Rust 正则;留空则走路径前缀回退规则",
"wizard.prompt.node_priority_order": "多节点匹配时数值更小者优先",
"wizard.prompt.node_storage_kind": "该节点的存储或上游类型",
"wizard.prompt.node_upstream_origin": "该节点上游源站(协议 + 主机)",
"wizard.prompt.node_upstream_port": "上游端口(不需要则留空)",
"wizard.prompt.optional_custom_user_agent": "可选的自定义 User-Agent",
"wizard.prompt.optional_http_basic_password": "可选的 HTTP Basic 密码",
"wizard.prompt.optional_http_basic_user": "可选的 HTTP Basic 用户名",
"wizard.prompt.path_rewrite_before_upstream": "访问上游前重写路径",
"wizard.prompt.path_rewrite_rust_regex": "enable=true 时对路径应用的 Rust 正则",
"wizard.prompt.path_rewrite_to_emby_cdn": "重写发往 Emby / CDN 的路径",
"wizard.prompt.pick_action_arrows": "请选择操作(↑ / ↓ 选择,Enter 确认)",
"wizard.prompt.pick_frontend_or_backend_port": "选择要编辑 Frontend 还是 Backend 的 listen_port",
"wizard.prompt.problematic_clients_csv": "以逗号分隔的 User-Agent 子串,用于特殊处理",
"wizard.prompt.proxy_mode_long": "redirect:客户端跟随 Location;proxy:服务端代拉上游",
"wizard.prompt.published_url_port": "写入公开 URL 的端口(常见为 443)",
"wizard.prompt.replacement_capture_groups": "替换字符串(支持捕获组)",
"wizard.prompt.ssl_cert_pem_path": "后端 HTTPS 的 PEM 证书路径(留空则使用配置文件旁默认布局)",
"wizard.prompt.ssl_private_key_pem_path": "PEM 私钥路径",
"wizard.prompt.stream_url_path_prefix": "流路由的 URL 路径前缀(例如 stream)",
"wizard.prompt.trusted_host_header": "启用防反代时的可信 Host 头",
"wizard.prompt.ua_mode_explainer": "allow:仅列表中的 User-Agent 子串可通过;deny:列表中的子串会被拦截",
"wizard.prompt.ua_token_one_per_line": "每行一个令牌;空行结束列表",
"wizard.prompt.user_agent_allow_tokens": "按客户端 User-Agent 子串匹配(不区分大小写)在 allow 模式下仅匹配的客户端可通过",
"wizard.prompt.user_agent_deny_tokens": "按客户端 User-Agent 子串匹配(不区分大小写)在 deny 模式下匹配的客户端会被拦截",
"wizard.prompt.video_missing_local_file": "视频资源缺失时返回的本地文件(留空则关闭)",
"wizard.prompt.webdav_query_param_key": "url_mode=query_path 时的查询参数名",
"wizard.prompt.webdav_url_template": "url_mode=url_template 时使用带 {file_path} 占位符的 URL",
"wizard.prompt.which_port_to_change": "要修改哪个端口",
"wizard.prompt.write_under_cwd": "写在当前工作目录下(仅文件名或相对路径)",
"wizard.section.backend": "后端(Backend)",
"wizard.section.backend_node": "BackendNode",
"wizard.section.backend_node_webdav": "BackendNode.WebDav",
"wizard.section.configs_in_cwd": "当前目录下的配置",
"wizard.section.configuration_template": "配置模板",
"wizard.section.emby": "Emby",
"wizard.section.fallback": "回退(Fallback)",
"wizard.section.file_content": "文件内容",
"wizard.section.frontend": "前端(Frontend)",
"wizard.section.general": "通用(General)",
"wizard.section.http2": "Http2(TLS 证书路径,可选)",
"wizard.section.log": "日志(Log)",
"wizard.section.masked_content": "已遮蔽内容",
"wizard.section.preview_toml": "预览(无注释 TOML)",
"wizard.section.stream_mode": "流模式(stream_mode)",
"wizard.section.user_agent": "UserAgent",
"wizard.tip.field_input": "提示:直接按 Enter 采用上一行中的默认值;或输入新值后按 Enter",
"wizard.tip.select_file_list": "提示:↑ / ↓ 选择,Enter 确认 · Esc 或 q 返回",
"wizard.value.backend_type.direct_link": "DirectLink",
"wizard.value.backend_type.disk": "Disk",
"wizard.value.backend_type.openlist": "OpenList",
"wizard.value.proxy_mode.proxy": "proxy",
"wizard.value.proxy_mode.redirect": "redirect",
"wizard.yes": "是"
}