Vocage is a minimalistic terminal-based vocabulary-learning tool. It presents flashcards using a spaced-repetition algorithm (e.g. Leitner); words you know well will be presented less and less frequently and words you have problems with will be repeated more often. You quickly move cards/words between decks and each deck has an associated presentation interval.
You can use vocage for anything you'd use flashcards for and not necessarily limited to learning languages.
The aim of this software is to keep things simple and minimalistic and to focus on one thing only (the unix philosphy).
#are considered comments. This also serves to quickly disable some cards without actually deleting them.
--showcards, which can be invoked multiple times, once per side. Traditionally there's a front side and a back side to a card, but you can define as many sides as you want.
--minimalparameter, in case you want to interact with vocage from shell scripts or other software.
Install vocage using Rust's package manager:
cargo install vocage
No cargo/rust on your system yet? Do
sudo apt install cargo on Debian/ubuntu based systems,
brew install rust on mac, or use rustup.
Arch Linux users can install vocage directly from the Arch User Repository: https://aur.archlinux.org/packages/vocage-git/ (e.g.
yay -S vocage-git)
vocage --help for a full parameter overview.
Have some data in TSV format ready, for example from here:
$ vocage yourdata.tsv
j- Keep card on the same deck and go to the next card (usually a random card unless you are in ordered mode)
J- Skip the card (it may be presented again immediately in the same session) and go to the next card (a random card will be selected)
k- Skip this card for now and go to the previous card
l- Promote this card to the next deck
h- Promote this card to the previous deck
w- Save progress (input files will be amended)
q- Quit (asks for confirmation is you have unsaved changes)
Q- Quit (without saving, don't ask confirmation)
a- Toggle between showing all cards and showing only cards that are due (default) (
s- Toggle between presenting unseen cards (default) and showing only cards that have been presented before. (
z- Toggle between ordered mode and random mode (default) (
--ordered). In ordered mode, cards will be presented in the order they are defined.