Advanced typing practice program
Project description
Amphetype
Amphetype is an advanced typing practice program.
Features include:
-
Type your favorite novel!
One of the core ideas behind Amphetype was to not just use boring "stock texts" for typing practice, but to allow me to practice on texts that I actually want to read. So one feature is the ability to import whole novels (for example from Project Gutenberg) and have Amphetype automatically generate bite-sized lessons from the text. For example, when I was learning the Colemak keyboard layout, I typed The Metamorphosis by Franz Kafka!
-
Typing statistics.
It provides the basic typing statistics (accuracy and WPM) across keys, trigrams, and words. It also tries to identify parts that break your flow and what impact these "viscous" combinations have on your typing speed overall. It also shows a graphs of progress over time.
-
Generate lessons from past statistics.
Amphetype features an advanced lesson generator where you can generate texts based on your past performance. Generate blocks of text to target practice your slowest words, trigrams, or keys!
-
Layout-agnostic.
Amphetype doesn't care what keyboard or layout you use, it only looks at how you use it.
-
Highly customizable in functionality, looks, and feel.
Installing
GNU/Linux
Easiest is to install via pip
[^1] or pipx
[^2]:
$ pip install --user amphetype
Note that Amphetype requires at least Python 3.6+.
The most recent version (1.2.x) on PyPi could be considered BETA as
it features a major update and overhaul and a new typing widget.
You can specify the old version with amphetype==1.0.1
.
Windows
Check out the releases for an installer.
Making Windows installations is a bit painful for me since I don't have regular access to Windows for testing. As a last resort you could try using Linux in Windows.
MacOS
... nor do I have access to a Mac, so here I will pretty much just copy instructions out of Google, because I have no experience.
(If you're an experienced user, the Linux instructions above are probably enough for you.)
- First install Homebrew if you don't have it.
- Then (in the terminal app) install Python 3 if you don't have it:
$ brew install python
- I've encountered at least one user who had to manually install
pyqt5
:$ brew install pyqt5
Not sure if this is necessary, or indeed if it installs its own Python, thus making step #2 redundant. - Either way, hopefully you will now either:
- Have a command called
pip
(orpip3
?), so use that like in the Linux instructions:$ pip install --user amphetype
- OR, if not, you should at least have Python
so you could try:
$ python3 -m pip install amphetype
(The command might bepython3.9
orpython3.10
orpython
.)
- Have a command called
- Run the program:
$ amphetype
(I'm not sure if it shows up in Finder?)
If a OSX dev is willing to write better and less confusing instructions, let me know!
Resurrected?
Yes, I originally made this program 12 years ago here. I've updated it somewhat and implemented some features that were requested back then, and upgraded the code to use Python 3 and Qt5 (instead of Python 2 and Qt4).
Google Code has gone read-only though, so I am unable to do anything about what's shown there.
Other Links
Review of (old) Amphetype: https://forum.colemak.com/topic/2201-training-with-amphetype/
My own inspiration for switching to a different keyboard layout and why I made Amphetype:
-
http://steve-yegge.blogspot.com/2008/09/programmings-dirtiest-little-secret.html
-
https://blog.codinghorror.com/we-are-typists-first-programmers-second/
Screenshots
TODO: make more attractive screenshots.
Using various themes:
[^1]: If you get something like "command not found," replace all instances of
pip
with python -m pip
. If that gives an error like "module not
found," try python -m ensurepip
first.
[^2]: You could also try using pipx
which isolates installations in its own
virtual environment, so dependencies do not interact with the rest of your
system.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file amphetype-1.2.1.tar.gz
.
File metadata
- Download URL: amphetype-1.2.1.tar.gz
- Upload date:
- Size: 2.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.8.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 954b62b15cd54dfec6a4d0444760ffe25421b5cc4fef2426821a8f39f3ac73c4 |
|
MD5 | 5968b2776e621bc679a53ff384952e55 |
|
BLAKE2b-256 | d0f5cdca80a047c0bc1bff43f889290d065d56627593c45532468eb2ad3a8be0 |
File details
Details for the file amphetype-1.2.1-py3-none-any.whl
.
File metadata
- Download URL: amphetype-1.2.1-py3-none-any.whl
- Upload date:
- Size: 2.9 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.8.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7168552d47e7e15e68f628e13779e4dc4409c972b3c21183f07541ea00a4ae7c |
|
MD5 | 454b98165a81954dc67547a150f7f014 |
|
BLAKE2b-256 | 86b282242d8ab431b0b204df14a87d9cfd6806c4a7b2c4ff9f721de00d7b7b7b |