RetroCode UK

Published Date May 7, 2020 Reading Time ~2 minutes RSS Feed Linux Keyboard Productivity

WPM - Practice Your Typing

There are some good online speed typing websites, but it seems silly to load up a browser, and wait for a page to load to simply practice typing. Fortunately I found a really excellent tool written in Python that lets you practice and measure your typing speed in the comfort of your own terminal emulator.

It’s called wpm and can be installed simply by typing pip install wpm


Once installed, it has a few handy options too, so you can even add your own list of typing practice samples; especially useful if you would like to practice typing in a different language.

The output of wpm --help is as follows:

usage: wpm [-h] [--load-json FILENAME] [--load FILENAME] [-V] [--tag TAG] [-s]
           [--cpm] [--stats-file STATS_FILE] [--id ID] [--search SEARCH]
           [--short] [--monochrome]

optional arguments:
  -h, --help            show this help message and exit
  --load-json FILENAME  JSON file containing quotes. The format is [{"author":
                        "...", "title": "...", "text": "...", "id": ...}, ...]
  --load FILENAME       A pure text file to train on.
  -V, --version         Show program version
  --tag TAG             Tag your race scores with this free text field.
  -s, --stats           Shows score statistics grouped by tags
  --cpm                 Shows CPM instead of WPM in stats
  --stats-file STATS_FILE
                        File to record score history to (CSV format)
  --id ID, -i ID        If specified, jumps to given text ID on start.
  --search SEARCH       Put quotes/authors/titles matching case-insensitive
                        text query first
  --short               Starts wpm with short texts
  --monochrome          Starts wpm with monochrome colors

Copyright 2017, 2018 Christian Stigen Larsen

One issue I found at the time of writing this was that wpm --load myfile.txt works, but it only allows for a short paragraph before it breaks - i.e. it inserts some carriage returns which would break the practice session as enter is not supported by it. This option would be useful as I would like to practice typing through an entire article or sections of a book.

Other than that, it’s great, and I have no qualms at all. If I could offer some suggestions, I might ask for it to let you know what keys you are missing more commonly, and perhaps offer practice focussing on those keys (I’m generally good, but “y” is the key I miss most of the time - it’s a much longer reach than any other of the keys on a standard keyboard).

Anyway, I really do highly recommend this. It’s always possible to improve your typing speed, no matter how fast you type, and this does the job fantastically well.

For more information, the official page is here: