Address code review feedback from cubic-dev-ai: P1: Unconditionally passing CJKmainfont broke non-CJK conversions in environments without CJK fonts. Now the source file is scanned for CJK characters and the font argument is only added when CJK content is detected. P2: Hardcoded Noto Sans CJK SC only covers Simplified Chinese. Now detects the specific CJK language (Japanese Kana, Korean Hangul, or Chinese Hanzi) and selects the appropriate font variant (JP/KR/SC). Changes: - Add detectCJKFont() that reads the source file and returns the correct Noto Sans CJK variant, or null for non-CJK content - CJK font argument is only added when detectCJKFont returns non-null - Detection order: Japanese (Kana) > Korean (Hangul) > Chinese (Hanzi) since Japanese also uses Kanji shared with Chinese - Graceful fallback: if file can't be read, no CJK font is added - Update tests to use temp files with real CJK content (11 tests total) |
||
|---|---|---|
| .. | ||
| converters | ||