fasttyper/README.md

33 lines
2 KiB
Markdown
Raw Normal View History

2021-07-10 16:42:22 +02:00
# fasttyper
2021-07-11 12:57:03 +02:00
[![](https://github.com/ickyicky/fasttyper/blob/main/doc/example.gif?raw=true)](https://github.com/ickyicky/fasttyper)
2021-07-10 17:09:59 +02:00
# About
2021-07-11 12:57:03 +02:00
_Fasttyper_ is minimalistic typing test based on user provided exercising text. It supports both reading from text files and stdin supporting wide range of usecases. The goal was to create it as simple as it can be, without any additional bloatware functionalities. That means that _Fasttyper_ doesn't come with build in test generator and you have to provide your own scripts generating tests. Some examples of such scrips are providen in [Usage section](#usage).
2021-07-10 17:09:59 +02:00
# Usage
_Fasttyper_ is ran as an python module, so to execute it simply type:
`python3 -m fasttyper`
from cloned github repository. Without any argument program waits for user to enter text manually and then signal the end of it with keyboard interrupt (CTRL+C). _Fasttyper_ can open text files, which path should be provided as first and only argument to the module execution, for example:
`python3 -m fasttyper example_text.txt`
Program also allows user to pipe text into it. Keep in mind, it only supports spaces and new line characters, so you won't be able to table tabs. For example, you can run _Fasttyper_ on fortune generated quote changing tabulators to spaces with sed:
2021-07-10 17:09:59 +02:00
`furtune | sed 's/\t/ /g' | python3 -m fasttyper`
2021-07-10 17:09:59 +02:00
2021-07-11 02:37:18 +02:00
or if you want to randomize words from given file with shuf, and then keep them in the same line, replacing new lines with spaces using awk, on for example all disctionaries in system:
2021-07-11 02:34:53 +02:00
2021-07-11 02:37:18 +02:00
`shuf -n5 /usr/share/dict/* | awk 1 ORS=' ' | python -m fasttyper`
2021-07-11 02:34:53 +02:00
2021-07-11 12:57:03 +02:00
You can use another similar projects set of words as well, for example to create test with 20 random words from [Monkeytype's](https://github.com/Miodec/monkeytype) english 100 dictionary use:
`curl -s https://raw.githubusercontent.com/Miodec/monkeytype/master/static/languages/english.json | python3 -c "import sys, json; print('\n'.join(json.load(sys.stdin)['words']))" | shuf -n20 | awk 1 ORS=' ' | python3 -m fasttyper`
2021-07-10 17:09:59 +02:00
# Known issues
2021-07-11 01:22:46 +02:00
Too large text brakes the app.