Alle Projekte

VS Code Extension · TypeScript

App-Icon WaniCode

WaniCode

Eine VS-Code-Erweiterung, die die echten WaniKani-Reviews und -Lessons in einem Editor-Panel ausführt, statt nur Zählerstände anzuzeigen. Inoffiziell und unabhängig: Sie spricht die öffentliche WaniKani-API v2 mit einem Token, das man selbst hinterlegt.

TypeScriptVS Code APIesbuildWanaKanaWaniKani API v2

Problem

Wer im Editor arbeitet und nebenbei Japanisch mit WaniKani lernt, wechselt für jede Review-Runde in den Browser. Andere Companions zeigen nur Zählerstände, das eigentliche Üben passiert weiter woanders. Und ein Lernclient darf die Antworten nicht lockerer bewerten als das Original, sonst trainiert man das Falsche.

Ansatz

Die volle Session läuft im Editor-Panel: Romaji-zu-Kana bei Readings über WanaKana, „close enough“-Matching für Meanings mit Tippfehler-Toleranz, ein Nudge, wenn man das Reading statt der Meaning tippt. Das gesamte Grading passiert client-seitig gegen einen lokalen Subject-Cache, nur das Ergebnis geht an die echte SRS. Der Token liegt in der VS-Code-SecretStorage, nie im Klartext.

Wirkung

Live im Visual Studio Marketplace in Version 0.4.2, quelloffen unter Apache-2.0. Reviews und Lessons laufen standardmäßig gegen die echte SRS, ein Practice-Modus erlaubt einen ganzen Durchlauf ohne Übermittlung. Der Subject-Cache ist inkrementell, sodass die Bewertung offline funktioniert, sobald er warm ist.

Im Editor

Aus der Erweiterung

Eine volle Review-Session im Editor-Panel, das Dashboard in der Activity-Bar, eine Zusammenfassung in der Status-Bar.

Session im Editor-Panel neben dem WaniCode-Dashboard in der VS-Code-Activity-Bar
Eine Session läuft im Editor-Panel, das Dashboard sitzt in der Activity-Bar
Reading-Frage, richtig beantwortet über Romaji-zu-Kana-Eingabe
Romaji-zu-Kana-Eingabe bei Readings
Activity-Bar-Dashboard mit Reviews, Lessons, nächstem Review und SRS-Verteilung
Activity-Bar-Dashboard mit SRS-Verteilung
Status-Bar-Zusammenfassung mit Reviews, Lessons und nächstem Review-Zeitpunkt
Zusammenfassung in der Status-Bar

Inoffiziell und unabhängig. Nicht mit WaniKani oder Tofugu affiliiert, unterstützt oder gesponsert. „WaniKani“ ist eine Marke der jeweiligen Inhaber.