Markdown version: https://ai.hiina.space/reports/jp-learning-and-anki-tooling/07-planned-tools-hybrid-reading-and-the-selective.md ยท index

Index of everything on this site: https://ai.hiina.space/index.md

Project status: Japanese immersion learning with Anki and selective glossing: 7. Planned tools: hybrid reading and the selective-gloss overlay

7. Planned tools: hybrid reading and the selective-gloss overlay

(c) Graded hybrid-reading browser rewriter

What it is. A Nuenki-style browser extension that is aware of the learner's known words. A stated sub-goal of the project, reading Japanese game-programming blogs, points to two distinct modes. Mode c1 rewrites English pages into a hybrid that weaves Japanese into English. Mode c2 glosses Japanese pages, showing a known-word-aware gloss only on words the learner probably does not know.

What exists. Nuenki is alive (v2.0.0, July 2026, $5.42/month, closed licence). It is a sentence-level swapper: it scores English source sentences against a generic CEFR model, using Bloom filters in WASM, and replaces whole sentences. There is no sign it imports a personal word list (nuenki.app; difficulty estimator). illa-helper is an MIT-licensed, LLM-based word replacer (about 2.9k stars, apparently stalled). It controls a replacement ratio but has no Japanese tokeniser and no known-word tracking (illa-helper). Lingoku swaps English words for JLPT-level Japanese, closed source with undisclosed logic (AMO). Toucan lists Japanese as not optimised for web use (Babbel support). Within the search done, nothing combines a personal known-lemma set, Japanese morphology and LLM rewriting.

What the evidence says. Re-RIGHT (ACL 2026) found that prompted frontier models are poor at hitting low vocabulary levels, and worse in Japanese. On Japanese vocabulary coverage GPT-5.2 scored 58.8%, against 76.0% for a 4B model tuned with RL. Claude Sonnet 4.5 is named among the weak prompted baselines (Re-RIGHT). So any rewrite must be verified in code and retried: tokenise, lemmatise, check against the known set, regenerate the spans that miss. Storyfier found that LLM stories containing target words raised engagement but not learning in read-only sessions (Storyfier). A glossing meta-analysis found glossed reading beat unglossed (about 45% versus 27% of targets recalled immediately), L1 glosses beat L2, and multiple-choice glosses were most effective (SSLA). The code-switching evidence behind c1 is a master's replication with 8 participants analysed (UFSC). Read together (inference): c2, glossing Japanese and letting the learner resolve it, is better supported than c1, weaving Japanese into English. Japanese SOV order and particles also make word-level weaving into English produce broken hybrids, so c1 would need clause-level swaps.

Build sketch. c2 is the same engine as (d), running as a content script: tokenise with Sudachi, query the learner model, mark unknown lemmas, and resolve each with a dictionary gloss plus an LLM sense pick, cached by page hash and vocabulary version. c1 would fork illa-helper, add Sudachi on the Japanese side and clause-level replacement, and use a cheap local model with verify-and-retry. Nuenki's own developer keeps slower multi-model translation out of the extension for latency reasons (Nuenki hybrid post).

Field Assessment
Effort c2: S once (d) and (e) exist. c1: L
Payoff c2: medium-high for the blog-reading goal. c1: low-medium, mainly passive exposure
Risks c1 trains reading of broken Japanese; c2 glosses can be too easy to click (the Bastani crutch effect)
Evidence gate (c1) A one-week Nuenki trial first. If sentence-level swapping does not change how much Japanese gets read, a better version will not either
Stop condition Drop c1 if, after two weeks of use, it does not raise later recall of words met only through it above words met in plain reading

(d) Selective-gloss, hint-first game and VN overlay

What it is. A texthooker client that receives each line from a game, VN or subtitle track. It leaves known words alone, marks words the learner probably does not know, and offers a hint ladder instead of a translation:

  1. Highlight the unknown lemma.
  2. Show its reading.
  3. Show a multiple-choice L1 gloss.
  4. Give a contextual sense or grammar note.
  5. Give the full line translation, as a last resort.

Every rung climbed is logged as evidence for the learner model and as a mining candidate.

What exists. GameSentenceMiner (GSM) is the notable 2026 development. v2026.9.0 added Linux Wine/Proton text hooking and Wayland-compatible OBS and overlay capture; v2026.9.2 is the latest stable. It also has OCR through an OwOCR fork, a texthooker that merges lines, and automated screenshot and audio capture for Anki (GSM releases). Linux distribution packaging lags; one packaging effort is only a forum to-do (NixOS Discourse). LunaTranslator does full translation with LLM backends and has Yomitan and Anki hooks, but nothing known-word-aware. VN Club advises turning its machine translation off for learning (Luna; VN Club tools). One learner's 2026 workflow is GSM plus texthooker plus Yomitan, with grammar pasted into an LLM by hand (skerritt.blog). No tool found glosses only unknown words or gives graded hints. This is the clearest gap in the research.

Build sketch. Subscribe to the texthooker websocket: GSM, or owocr on its default port 7331 (owocr guide). For anime, read asbplayer's subtitle stream or the .ass file. Render in a browser window on a second monitor; that avoids Wayland overlay compositing, which is undocumented for most tools, and keeps Yomitan available. Tokenise with Sudachi, look up the learner model, and pre-fetch JMdict senses. Rungs 1-3 are deterministic and instant. Rung 4 calls a local 7-14B instruct model on a single 24 GB consumer GPU. VRAM is not the constraint, but latency has not been measured anywhere; hint output is shorter than full translation, which should help (inference). Rung 5 calls the same model or a cloud model. A "would this spoil the plot" flag is out of scope.

Field Assessment
Effort M
Payoff High. One engine covers anime, VNs, games and (via c2) Japanese web pages. It improves the enjoyment side directly and generates the best learner-model signal: what was looked up, in context, at what rung
Risks GSM Linux hooking is weeks old and unpackaged; OCR noise; hint rungs that are too easy (multiple-choice glosses are best-evidenced, but from reading tests, not real-time play); a CALICO gloss-density meta-analysis that points in both directions (CALICO)
Evidence gate Within-subject experiment: randomly assign each unknown lemma to the hint-ladder condition or a plain-Yomitan condition, and test recognition of both groups a week later
Stop condition If hint-ladder words are not recalled better than plain-Yomitan words, keep the overlay only for known-word highlighting and logging

Text licensed CC BY 4.0 (attribution: Hiina, ai.hiina.space). Source: https://github.com/hiinaspace/ai-hiina-space