speedpad(1) ncurses tool to test, train, and increase typing speed


speedpad [OPTIONS] [--] [FILE [FILE ...]]
speedpad [...] -c [--] [CMD [ARG ...]]


speedpad is an interactive ncurses tool to test, train, and increase typing speed on arbitrary text input:
  • designed for intermediate to advanced level typists
  • assumes that you have already learned how to touch type
  • no lessons, no single words, no synthetic stuff
  • tab expansion, auto indentation and syntax support to train on code
  • reference speed robot (defaults to 100 WPM)
  • supports CPS, CPM, WPM, PPM, and CPH/KPH metrics
  • shows detailed statistics about speed and typos
  • helps to find and eliminate frequent typos


show version number and exit
-h, --help
show help message and exit
use positional arguments as command line (default: False)
write stats dump to file (default: <stdout>)
speed in words per minute (default: True)
speed in chars per minute (default: False)
speed in chars per second (default: False)
--speed SPEED
reference speed in matching unit (default: 100.0)
--wrap WIDTH
wrap text at specified width (default: 0)
[<0 = disable, 0 = auto, >0 = fixed]
--user NAME
set custom user name (default: <login name>)
--tabsize N
set custom tabsize (default: 8)
require manual line breaks (default: False)
enable auto indentation (default: False)
enable syntax support (default: False)
keep excessive whitespace in text (default: False)
disable the reference speed robot (default: False)
disable colors (default: False)
disable stats dump on stdout (default: False)
equals --no-strip --indent --syntax

The following options should be used carefully:

--input-encoding encoding
--output-encoding encoding
--filesystem-encoding encoding

For a full list of supported encodings, see:


load next quote (if not started)
reset counters and position, restart quote (if started)
stop current round and show statistics (if started)
quit gracefully and dump stats
quit forcefully and do not dump stats



Press space, tab, or any alphanumeric key to start typing.


speedpad file1 file2 file3
grep ^foo words | speedpad
speedpad -c -- fortune -s -n 500
speedpad -c -- fortune 40% startrek 60% linux
speedpad /usr/src/linux/README
speedpad --code /usr/src/linux/mm/pagewalk.c

write stats to file:
speedpad > stats
speedpad >> stats (append)
speedpad -o stats (append)
show speed for all records:
gnuplot -p -e "plot 'stats' using 15
               smooth sbezier title 'wpm'"
show speed development over time:
gnuplot -p -e "set xdata time; set timefmt '%s';
               plot 'stats' using 1:15
               smooth sbezier title 'wpm'"
show speed in relation to elapsed typing time:
gnuplot -p -e "plot 'stats' using 3:15
               smooth sbezier title 'wpm'"
show typos in relation to speed:
gnuplot -p -e "plot 'stats' using 15:11
               smooth sbezier title 'typos'"


speedpad and this man page was written by John Feuerstein.