Commit Graph
82 Commits
Author SHA1 Message Date
sudacode 1fd3f0575b fix: prioritize SubMiner definitions in Yomitan 2026-03-06 22:01:20 -08:00
sudacode ca0eec568c fix: quiet default appimage startup 2026-03-06 21:17:47 -08:00
sudacode 94abd0f372 Deduplicate voice actor image downloads per AniList person ID
- Avoid repeated downloads when multiple characters share the same voice actor
- Add coverage for shared voice actor image download behavior
2026-03-06 17:21:19 -08:00
sudacode 4d60f64bea Gate subtitle name highlighting on character dictionary setting
- Disable `getNameMatchEnabled` when `anilist.characterDictionary.enabled` is false
- Wire character-dictionary enablement into main subtitle tokenization deps
- Add runtime deps test coverage and record task/plan docs
2026-03-06 17:13:56 -08:00
sudacode dbd6803623 chore: update acknowledgments and fix config quote style 2026-03-06 16:42:42 -08:00
sudacode 5ff4cc21bd feat(dictionary): structured glossary with voice actors and collapsible sections
- Add voice actor data (Japanese VA) from AniList GraphQL query
- Redesign glossary entries as structured-content with role badges,
  collapsible Description/Character Information/Voiced-by sections
- Parse __Key:__ fields from AniList descriptions into structured info
- Download and embed voice actor images alongside character images
- Bump format version to 12
2026-03-06 16:41:58 -08:00
sudacode 82bec02a36 feat(subtitles): highlight character-name tokens 2026-03-06 16:38:19 -08:00
sudacode c548044c61 docs(backlog): close TASK-87.4 2026-03-06 11:05:47 -08:00
sudacode 39976c03f9 refactor: remove dead registry and pipeline modules 2026-03-06 11:04:17 -08:00
sudacode e659b5d8f4 refactor(runtime): remove dead symbols from composition roots 2026-03-06 10:56:20 -08:00
sudacode 85bd6c6ec2 refactor: extract anki integration runtime 2026-03-06 09:30:15 -08:00
sudacode 6fe6976dc9 test: relax launcher smoke timeout budget 2026-03-06 07:52:26 -08:00
sudacode e6150e9513 fix: update default frequency band colors 2026-03-06 07:51:58 -08:00
sudacode 40521e769d update backlog 2026-03-06 01:35:30 -08:00
sudacode 2f31227471 fix: preserve user dictionary ordering 2026-03-06 01:34:44 -08:00
sudacode 69fd69c0b2 fix: log anime dictionary progress 2026-03-06 01:34:42 -08:00
sudacode 746696b1a4 fix: improve yomitan subtitle name lookup 2026-03-06 01:28:58 -08:00
sudacode ebe9515486 build: expand typecheck coverage beyond src 2026-03-06 01:03:51 -08:00
sudacode 8c2c950564 feat: merge AniList character dictionaries by recent usage 2026-03-06 01:01:31 -08:00
sudacode e2b51c6306 test: align standard commands with maintained test surface 2026-03-06 00:58:32 -08:00
sudacode f160ca6af8 test: add sqlite immersion verification lane 2026-03-06 00:25:24 -08:00
sudacode 289486a5b1 test: add real subtitle verification lane 2026-03-06 00:08:54 -08:00
sudacode ac4fd60098 fix: pace AniList character dictionary requests 2026-03-05 23:57:38 -08:00
sudacode 72b18110b5 fix: second instance start handling 2026-03-05 23:32:22 -08:00
sudacode c791887d5c fix(launcher): base64 encode aniskip payload 2026-03-05 23:24:09 -08:00
sudacode 8570b262e4 fix: preserve pause state on next subtitle jump 2026-03-05 23:23:43 -08:00
sudacode 33ded3c1bf feat: add AniList character dictionary sync 2026-03-05 23:23:43 -08:00
sudacode 2f07c3407a chore: bump version to 0.3.0 2026-03-05 20:21:03 -08:00
sudacode a5554ec530 docs: capture anki proxy notes and codebase health backlog 2026-03-05 20:14:58 -08:00
sudacode f9f2fe6e87 docs: update keyboard-driven yomitan workflow 2026-03-05 20:13:38 -08:00
sudacode 8ca05859a9 fix: support repeated popup scroll keys 2026-03-05 19:20:55 -08:00
sudacode 0cac446725 fix: preserve keyboard subtitle navigation state 2026-03-05 18:39:40 -08:00
sudacode 23623ad1e1 docs(backlog): add keyboard-driven yomitan task record 2026-03-05 01:29:13 -08:00
sudacode b623c5e160 fix: improve yomitan keyboard navigation and payload handling 2026-03-05 01:28:54 -08:00
sudacode 5436e0cd49 chore(docs): remove Plausible tracker integration 2026-03-04 23:04:11 -08:00
sudacode beeeee5ebd fix(core): recopy Yomitan extension when patched scripts drift 2026-03-04 23:04:11 -08:00
sudacode fdbf769760 feat(renderer): add keyboard-driven yomitan navigation and popup controls 2026-03-04 23:04:11 -08:00
sudacode 0a36d1aa99 fix(anki): force Yomitan proxy server sync for card auto-enhancement 2026-03-04 23:04:11 -08:00
sudacode 69ab87c25f feat(renderer): add optional yomitan popup auto-pause 2026-03-04 23:04:11 -08:00
sudacode 9a30419a23 fix(tokenizer): tighten frequency highlighting exclusions 2026-03-04 23:04:11 -08:00
sudacode 092c56f98f feat(launcher): migrate aniskip resolution to launcher script opts 2026-03-03 00:38:22 -08:00
sudacode 10ef535f9a feat(subsync): add replace option and deterministic retimed naming 2026-03-03 00:26:31 -08:00
sudacode 6c80bd5843 fix(docs): point plausible tracker to /api/event 2026-03-03 00:26:09 -08:00
sudacode f0bd0ba355 fix(release): publish via gh cli with clobber upload 2026-03-02 03:00:06 -08:00
sudacode be4db24861 make pretty 2026-03-02 02:45:51 -08:00
sudacode 83d21c4b6d fix: narrow fallback frequency filter type predicate 2026-03-02 02:44:07 -08:00
sudacode e744fab067 fix: unblock autoplay on tokenization-ready and defer annotation loading 2026-03-02 02:43:09 -08:00
sudacode 5167e3a494 docs: add plausible tracker config for docs site 2026-03-02 02:33:45 -08:00
sudacode aff4e91bbb fix(startup): async dictionary loading and unblock first tokenization
- move JLPT/frequency dictionary init off sync fs APIs and add cooperative yielding during entry processing

- decouple first tokenization from full warmup by gating only on Yomitan readiness while MeCab/dictionary warmups continue in parallel

- update mpv pause-until-ready OSD copy to tokenization-focused wording and refresh gate regression assertions
2026-03-02 01:48:17 -08:00
sudacode 737101fe9e fix(tokenizer): lazy yomitan term-only frequency fallback 2026-03-02 01:45:37 -08:00
sudacode 629fe97ef7 chore(tokenizer): align enrichment regression notes and test typing 2026-03-02 01:45:23 -08:00
sudacode fa97472bce perf(tokenizer): optimize mecab POS enrichment lookups 2026-03-02 01:39:44 -08:00
sudacode 83f13df627 perf(tokenizer): skip known-word lookup in MeCab POS enrichment 2026-03-02 01:38:37 -08:00
sudacode cde231b1ff fix(tokenizer): avoid repeated yomitan anki sync checks on no-change 2026-03-02 01:36:22 -08:00
sudacode 7161fc3513 fix: make tokenization warmup one-shot 2026-03-02 01:33:09 -08:00
sudacode 9a91951656 perf(tokenizer): cut annotation latency with persistent mecab 2026-03-02 01:15:21 -08:00
sudacode 11e9c721c6 feat(subtitles): add no-jump subtitle-delay shift commands 2026-03-02 01:12:26 -08:00
sudacode 3c66ea6b30 fix(jellyfin): preserve discover resume position on remote play 2026-03-01 23:28:03 -08:00
sudacode 79f37f3986 fix(subtitle): prioritize known and n+1 colors over frequency 2026-03-01 23:23:53 -08:00
sudacode f1b85b0751 fix(plugin): keep loading OSD visible during startup gate 2026-03-01 23:23:45 -08:00
sudacode 1ab5d00de0 bump version 2026-03-01 20:12:59 -08:00
sudacode 17a417e639 fix(subtitle): improve frequency highlight reliability 2026-03-01 20:12:42 -08:00
sudacode 68e5a7fef3 fix: sanitize jellyfin misc info formatting 2026-03-01 20:05:19 -08:00
sudacode 7023a3263f Jellyfin and Subsync Fixes (#13) 2026-03-01 16:13:16 -08:00
sudacode 49434bf0cd fix release job 2026-03-01 02:50:51 -08:00
sudacode 44c7761c7c Overlay 2.0 (#12) 2026-03-01 02:36:51 -08:00
sudacode 45df3c466b add task 2026-02-26 23:10:47 -08:00
sudacode 6eda768261 0.1.2 2026-02-24 00:05:06 -08:00
sudacode ceea10cba1 update docs 2026-02-24 00:04:53 -08:00
sudacode 9d73971f3b feat(launcher): pass through password-store for jellyfin flows 2026-02-23 23:59:14 -08:00
sudacode a2735eaedc feat(anilist): enforce encrypted token storage and default gnome-libsecret 2026-02-23 23:53:53 -08:00
sudacode b989508ece 0.1.1 2026-02-23 19:56:32 -08:00
sudacode 978cb8c401 Ensure overlay modal grabs input 2026-02-23 19:54:58 -08:00
sudacode fe8a71990a fix(ci): install deps in release job before launcher build 2026-02-23 02:23:50 -08:00
sudacode 0d63db5f27 fix(ci): install deps before building launcher in release 2026-02-23 02:13:03 -08:00
sudacode 4f02d7db9c update readme/docs 2026-02-23 01:41:52 -08:00
sudacode cbed5f1376 chore: re-add yomitan-jlpt-vocab submodule 2026-02-22 23:04:39 -08:00
sudacode 4ebabbe639 chore: add project management metadata and remaining repository files 2026-02-22 21:43:43 -08:00
sudacode 64020a9069 docs: add setup guides, architecture docs, and config examples 2026-02-22 21:43:43 -08:00
sudacode ae95601698 feat(assets): bundle runtime assets and vendor dependencies 2026-02-22 21:43:43 -08:00
sudacode d3fd47f0ec feat(core): add Electron runtime, services, and app composition 2026-02-22 21:43:43 -08:00
sudacode 448ce03fd4 chore: bootstrap repository tooling and release automation 2026-02-22 21:43:43 -08:00