All Projects → proycon → vocage

proycon / vocage

Licence: GPL-3.0 License
A minimalistic spaced-repetion vocabulary trainer (flashcards) for the terminal

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to vocage

mpvacious
Adds mpv keybindings to create Anki cards from movies and TV shows.
Stars: ✭ 286 (+320.59%)
Mutual labels:  flashcards, language-learning, anki
anki-add-hooks-userscripts
Automate Anki card creation from popular translation websites
Stars: ✭ 17 (-75%)
Mutual labels:  flashcards, language-learning, anki
anki-md
A markdown to anki flash cards converter
Stars: ✭ 22 (-67.65%)
Mutual labels:  flashcards, anki
ScienceNotebooks
Collection of tools and stylesheet for scientific writting and learning (through Anki)
Stars: ✭ 43 (-36.76%)
Mutual labels:  flashcards, anki
ankimaker
Automatically generates Anki decks from many sources
Stars: ✭ 43 (-36.76%)
Mutual labels:  language-learning, anki
Game2Text
Complete toolbox for gamifying language learning
Stars: ✭ 86 (+26.47%)
Mutual labels:  language-learning, anki
AnkiSharp
Create anki decks and cards from your C# application
Stars: ✭ 39 (-42.65%)
Mutual labels:  flashcards, anki
speed-focus-mode
Speed Focus Mode add-on for Anki
Stars: ✭ 19 (-72.06%)
Mutual labels:  flashcards, anki
Anki Android
AnkiDroid: Anki flashcards on Android. Your secret trick to achieve superhuman information retention.
Stars: ✭ 4,425 (+6407.35%)
Mutual labels:  flashcards, anki
ForgetMeNot
A flashcard app for Android.
Stars: ✭ 234 (+244.12%)
Mutual labels:  flashcards, anki
wallpaper-learn
Learn languages, facts, schoolwork, and more from your wallpaper by setting a cycling background with computer-generated images.
Stars: ✭ 22 (-67.65%)
Mutual labels:  flashcards, language-learning
anki-mode
An Emacs major mode for creating anki cards
Stars: ✭ 47 (-30.88%)
Mutual labels:  flashcards, anki
fluentcards-extension
Chrome extension to look up words in a dictionary and save as flashcards.
Stars: ✭ 20 (-70.59%)
Mutual labels:  flashcards, language-learning
mnemocards
In addition to helping you memorise, this code helps you do other things that I don't remember...
Stars: ✭ 34 (-50%)
Mutual labels:  flashcards, anki
Polar Bookshelf
Polar is a personal knowledge repository for PDF and web content supporting incremental reading and document annotation.
Stars: ✭ 4,411 (+6386.76%)
Mutual labels:  flashcards, anki
AnnA Anki neuronal Appendix
Using machine learning on your anki collection to enhance the scheduling via semantic clustering and semantic similarity
Stars: ✭ 39 (-42.65%)
Mutual labels:  flashcards, anki
chinese-support-redux
Anki add-on providing support for Chinese study
Stars: ✭ 88 (+29.41%)
Mutual labels:  flashcards, anki
files2flashcards
Keep your flashcards rooted in the context of your notes
Stars: ✭ 28 (-58.82%)
Mutual labels:  flashcards, anki
2anki.net
Server to create Anki flashcards faster, easier and better today ⭐️
Stars: ✭ 190 (+179.41%)
Mutual labels:  flashcards, anki
immersive
Language learning mpv script for looking up words within mpv and generating Anki cards
Stars: ✭ 43 (-36.76%)
Mutual labels:  language-learning, anki

Crate

Introduction

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).

Example of chinese vocabulary learning with vocage

Features & non-features

  • Data is stored in a simple plain-text tab-separated values format (TSV). So you can edit your cards in your favourite text editor or spreadsheet program (use CSV export and set delimiter to tab and quotes to none). Vocage itself does not provide editing facilities.
    • All lines starting with # are considered comments. This also serves to quickly disable some cards without actually deleting them.
  • Your learning progress is stored right inside the TSV files, simply by adding one column for the deck a card is in, and one for when it is due. This keeps everything in one place (no external configuration/library files) and makes it easy to process with external tools. You could keep your vocabulary sets in git, if you want.
  • Configuration is done via command line parameters that can also be stored as comments at the end of the TSV file for quick loading:
    • The columns are defined either as a header line on the very first line (in upper case!), or more explicitly using --columns.
    • You determine what columns to show on which side of the card using --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.
    • Define deck names and their intervals.
    • Sane defaults; if no configuration is specified some sane defaults will be used.
  • Load multiple vocabulary files (TSV) together, provided they have the same column layout. This allows you to use files as an easy grouping mechanism (e.g. a file per level, per domain, or per word class).
  • The 'fancy' TUI can be disabled by setting the --minimal parameter, in case you want to interact with vocage from shell scripts or other software.
  • Proper unicode support
  • Colour support, each column gets a colour (can be disabled in --minimal mode)
  • Arrow keys and vim-style movements (hjkl)
  • Written in Rust; fast & efficient

Installation

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)

Usage

Type vocage --help for a full parameter overview.

Quick Start

Have some data in TSV format ready, for example from here:

$ vocage yourdata.tsv

Key Bindings

  • space / enter - 'Flip' the card, shows the next side (i.e. the solution)
  • Arrow down / j - Keep card on the same deck and go to the next card (usually a random card unless you are in ordered mode)
  • PageDown / 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)
  • Arrow up / k - Skip this card for now and go to the previous card
  • Arrow right / l - Promote this card to the next deck
  • Arrow left / h - Promote this card to the previous deck
  • A number key - Move the card to the n'th 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) (--all)
  • s - Toggle between presenting unseen cards (default) and showing only cards that have been presented before. (--seen)
  • z - Toggle between ordered mode and random mode (default) (--ordered). In ordered mode, cards will be presented in the order they are defined.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].