Skip to content

Accept alias subtitle suffixes when detecting existing outputs - #29

Merged
TN019 merged 1 commit into
mainfrom
subtitle-suffix-aliases
Aug 4, 2026
Merged

Accept alias subtitle suffixes when detecting existing outputs#29
TN019 merged 1 commit into
mainfrom
subtitle-suffix-aliases

Conversation

@TN019

@TN019 TN019 commented Aug 4, 2026

Copy link
Copy Markdown
Owner

背景

字幕文件在外界常用 .cn/.chs/.zh-cn 等后缀命名中文;此前检测只认规范后缀(.zh/.en),目录里手动放置或其他工具生成的 lecture.cn.srt 不被识别为已有翻译,批量运行时会对着现成的字幕再翻一遍。

改动与实现

  • languages.py:LanguageSpec 新增 aliases(仅用于检测,写文件仍用规范 suffix);zh 注册 .cn/.chs/.zh-cn/.zh-hans/.zh_cn,en 注册 .eng;新增 alias_suffixes() 帮助函数
  • translate/stage.py:翻译前的已存在检查改为遍历规范后缀+别名,命中即原样返回该文件、不调用模型(overwrite 时照旧强制重翻)
  • core/output.py:转录跳过检查同步支持别名——指定语言时在目标目录补查别名后缀;auto 模式的「任一已知后缀即视为完成」把所有语言的别名并入候选
  • 命名/写出路径零变化;config 的 lang_suffixes 覆盖机制不受影响

验证

  • uv run pytest -q:166 passed / 5 skipped;新增两例——存在 lecture.cn.srt 时 translate 返回该文件且模型零调用;existing_transcript 对 zh 强制与 auto 两种模式均命中 .cn.srt,对 ja 不误报

@TN019
TN019 merged commit 1fb8cf8 into main Aug 4, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant