mirror of
https://github.com/CCExtractor/ccextractor.git
synced 2026-10-02 19:48:29 +00:00
The --mkvlang option previously only supported single ISO 639-2 codes due to using a Language enum with a fixed list of variants. Extended codes (like "fre-ca") and multiple codes (like "eng,chi") would panic. This change introduces MkvLangFilter, a proper type for language filtering that: - Validates language codes per BCP 47 specification - Supports ISO 639-2 (3-letter codes like "eng") - Supports BCP 47 tags (like "en-US", "zh-Hans-CN") - Supports comma-separated multiple codes - Provides clean error messages for invalid input - Includes comprehensive unit tests The C code continues to receive the raw string for strstr() matching, maintaining backward compatibility. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>