Skip to content

PatrickLerner/escrit

Repository files navigation

Rust codecov Crates.io Version GitHub License

escrit

Read texts similar to the Birkenbihl method or applications like lingq. Read the text and add words to a dictionary file (if you want with a description).

The idea is to learn vocabulary in a foreign language by going through input in the form of texts quickly. Currently supports Ukrainian and Turkish languages.

Install & Usages

You can find the package on crates.io and can install it as cargo install escrit. Then you can run it like so:

  • escrit text.txt (defaults to Ukrainian)
  • escrit --language turkish text.txt (or -l tr for short)
  • pbpaste | escrit (macos to read clipboard input)

Keys / Usages

See source code for KeyCode, but roughly:

  • Arrow keys / awsd / hjkl for navigation in texts. Up and down scrolls, while left and right moves the word cursor
  • Home/g for jumping to beginning of text
  • End/G for jumping to end of text
  • PageUp/PageDown for faster navigation in scroll position
  • , and . jump to next word that is not rated as "Known". < and > jump to next word that is specifically Unknown
  • 1 mark word as Unknown (default for new words)
  • 2 mark word as Encountered (seen it, but don't know it very well)
  • 3 mark word as Learning (encountered it a few times, roughly know it)
  • 4 mark word as Retained (seen it often, think I know it well)
  • 5 mark word as Known (I don't even think about it)
  • t open google translate for a word. T to translate a sentence.
  • y reads the word. Y reads the sentence. (TTS support will depend on your system, see rust's tts crate)
  • e add a note/definition to a word. When editing press enter to save, and escape to abort
  • q to quit application

Dictionary file page

Depends on the operating sysem, see app_dirs2 crate. It will be in the escrit directory.

Dev Notes

  • Open line coverage of tests: cargo llvm-cov --open
  • While developing you can run it as cargo run -- %file to open a file in reading mode.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages