---
id: jp-learning-and-anki-tooling/07-planned-tools-hybrid-reading-and-the-selective
title: 'Project status: Japanese immersion learning with Anki and selective glossing:
  7. Planned tools: hybrid reading and the selective-gloss overlay'
report: https://ai.hiina.space/reports/jp-learning-and-anki-tooling.md
section: 7
version: 1
updated: '2026-10-27'
author: Hiina
---

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

- Section 7 of 12 of the report "Project status: Japanese immersion learning with Anki and selective glossing" by Hiina (v1, updated 2026-10-27)
- Report overview and contents: https://ai.hiina.space/reports/jp-learning-and-anki-tooling.md
- Previous: https://ai.hiina.space/reports/jp-learning-and-anki-tooling/06-planned-tools-deck-hygiene-agent-and-concept.md
- Next: https://ai.hiina.space/reports/jp-learning-and-anki-tooling/08-planned-tool-the-shared-learner-model.md

## 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](https://nuenki.app/); [difficulty estimator](https://nuenki.app/sentencedifficulty)). 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](https://github.com/xiao-zaiyi/illa-helper)). Lingoku swaps English words for JLPT-level Japanese, closed source with undisclosed logic ([AMO](https://addons.mozilla.org/firefox/addon/lingoku-ai/)). Toucan lists Japanese as not optimised for web use ([Babbel support](https://support.babbel.com/hc/en-gb/articles/18269893246738-Toucan-browser-extension)). 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](https://arxiv.org/pdf/2604.05302)). 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](https://arxiv.org/pdf/2308.03864)). 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](https://cambridge.org/core/journals/studies-in-second-language-acquisition/article/how-do-different-forms-of-glossing-contribute-to-l2-vocabulary-learning-from-reading/38124150D59DF3039EE1FF5AE88FE922)). The code-switching evidence behind c1 is a master's replication with 8 participants analysed ([UFSC](https://repositorio.ufsc.br/xmlui/handle/123456789/276447)). 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](https://nuenki.app/blog/the_best_translator_is_a_hybrid_translator)).

| 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](https://github.com/bpwhelan/GameSentenceMiner/releases)). Linux distribution packaging lags; one packaging effort is only a forum to-do ([NixOS Discourse](https://discourse.nixos.org/t/packaging-gamesentenceminer/74203)). 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](https://github.com/HIllya51/LunaTranslator); [VN Club tools](https://vnclub.org/tools/)). One learner's 2026 workflow is GSM plus texthooker plus Yomitan, with grammar pasted into an LLM by hand ([skerritt.blog](https://skerritt.blog/my-current-way-to-mine-visual-novels/)). 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](https://vnclub.org/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](https://journal.equinoxpub.com/Calico/article/view/16993)) |
| 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
