Learn Finnish by writing Finnish. With guardrails, of course.
This video shows off the latest finyap has to offer. It is also linked to the still image below.
This project is still in early development. To run finyap.bash, you must have the following programs installed:
- A UTF-8 compatible terminal: Required to correctly display Finnish characters (like ä and ö) and ANSI color codes. I use Kitty; Alacritty should work too if you're having trouble.
- Bash, the Bourne-again shell. If you're on Mac or Linux, you probably already have this. If you're on Windows, maybe try Windows Subsystem for Linux?
- fzf, the fuzzy command line finder. Essential, this script will not run without fzf installed!
- Homebrew (macOS):
- APT (Debian/Ubuntu):
- Pacman (Arch Linux):
- For other systems, follow the official fzf installation instructions.
- Standard Unix utilities: shuf, sed, grep, tr, cut, head. These are pre-installed on most Linux and macOS systems.
-
Clone the repository:
git clone https://github.com/hiAndrewQuinn/finyap.git cd finyap -
Install fzf, if you haven't already.
-
Run the script with bash finyap.bash.
- Show the help message:
- Show the script version:
bash finyap.bash --version
- Play finyap using a custom TSV file, for example the ones included in scenarios/:
bash finyap.bash --input scenarios/ordering-coffee.tsv
No configuration is provided out of the box. That might change in the future, though, as this project is in very early development.
- Sampling: The script reads SAMPLED_LINES_COUNT random lines from the SENTENCE_FILE.
- Word List Creation: All unique Finnish words from the sampled lines are collected to create the master list for fzf.
- Sentence Selection: One random sentence is chosen from the sample for the game round.
- Guessing:
- The sentence is displayed with all words masked.
- The current word to be guessed is highlighted.
- fzf is launched, allowing you to search the master word list.
- If your selection is correct, the word is revealed, and you move to the next word.
- If your selection is incorrect, the game ends, and the correct sentence is shown.
- Victory: If you guess all the words correctly, you win the round!
If the word ends in a common Finnish clitic, like -kin or -ko, it will appear in a different color. This system is pretty dumb but I find it to be helpful so that I don't get distracted from figuring out the base word.
Contributions are welcome! If you have ideas for new features, bug fixes, or improvements, feel free to open an issue or submit a pull request.
See LICENSE.
.png)



