Skip to content

v2.4.2

Choose a tag to compare

@github-actions github-actions released this 21 May 15:03
· 601 commits to main since this release

New features

  • Saved-source dictionary archives. Imported Yomitan zips persist at ~/.anki_miner/dicts/<dict_id>/source.zip, atomically staged alongside index.sqlite.
  • Reimport All. New Dictionary Settings button walks the chain and reimports every indexed entry in one chained run, with a reimported / skipped / failed summary at the end. Replaces the old "Reimport JMdict" button. Useful to reimport dictionaries after fixes like #28.

Fixes

  • Bold target word landed on the wrong characters on subtitle lines with internal spaces (#20). MeCab strips whitespace from the token stream, so cursor arithmetic drifted left of every space. Token spans now resolve via str.find against the raw line.
  • Bold-target helper text and tooltip rendered literal <b> markup as HTML. FormPanel helpers forced to PlainText; tooltip escapes angle brackets.
  • Re-mining an already-known episode with bold-target enabled produced zero cards with no explanation. EpisodeProcessor now warns when every parsed word is already in Anki, and AnkiService logs a per-batch bold-usage counter.
  • Monolingual dictionary glosses missing line breaks (#28). \n in plain-text Yomitan glosses now renders as <br>. \r\n and \r normalized first.
  • yt-dlp floor bumped from 2026.3.0 to 2026.3.3 in pyproject.toml and the CI floor-version smoke job to skip an upstream regression.

Upgrade notes

  • Re-import affected monolingual dictionaries to refresh cached HTML for #28. Existing cards are not rewritten retroactively.
  • Dictionaries imported before this release have no saved source.zip. Reimport All skips them until you re-pick their zip once via the per-row stale-reimport button, which seeds the cache.

Full Changelog: v2.4.1...v2.4.2