This repository contains code to work with vocabulary (JSON) files via REPL. No other user interface is provided.

Zelphir Kaltstahl be53c8d6dc update readme 1 month ago
data db55d610a5 change structure of HSK1 data file 4 months ago
guix-env e99c1db3cc update guix channels 1 month ago
lib b1b4c063f4 implement paginated output for training 1 month ago
LICENSE eab0c812d5 Initial commit 4 months ago
Makefile 7365c1559d add target for just compiling to see errors 2 months ago
main.scm da0e78cac3 outsource training functions 2 months ago be53c8d6dc update readme 1 month ago


A program for exploring vocabulary files on the REPL. Hopefully providing enough useful procedures.


Run with GNU Guile to use. Use the provided =Makefile=: make


(define myvoc (vocabulary-filter voc §not-learned (make-relevance-filter 3 >=))) (percentage (stat-learned voc))

All native meanings of not learned HSK3 words

(vector-map (λ (ind elem) (alist-refs elem '("translation-data" "native"))) (vocabulary-words (vocabulary-filter (? voc "hsk3") §not-learned)))

Refine searches

Search results can be searched again:

(? (? voc "hsk3") "grammar")

;; or shorter

(?? voc "hsk3" "grammar")

(vocabulary-filter (? voc "hsk3") §not-learned)

Train vocabulary

Search results can be trained:

(train (?? voc "hsk3" "grammar"))