Browser-based Typing Drill Widget
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
journal * journal: OK, I think I'm done with this. Nov 9, 2016
.gitignore * README.md, LICENSE, .gitignore: new files. Oct 20, 2016
LICENSE * README.md, LICENSE, .gitignore: new files. Oct 20, 2016
NGSL-without-translations.txt * NGSL-without-translations: words that aren't in plover-translations. Oct 29, 2016
README.md * README: add gh.io link, NGSL_all_forms. Nov 1, 2016
font-roboto.css drop google font api on the rest of the html files Jul 13, 2017
form.html type-jig: show key instead of stroke Jun 20, 2018
gutenberg.html type-jig: show key instead of stroke Jun 20, 2018
gutenberg.js remove some unpleasant sentences Apr 6, 2017
index.html drop google font api on the rest of the html files Jul 13, 2017
learn-plover.html Merge pull request #34 from na2hiro/navigation-by-stroke Jun 20, 2018
learn-plover.js Fix Diphthong Spelling May 27, 2018
number-sentences.js * form, gutenberg: factor out drills/utility functions. Sep 5, 2017
numbers.html drop google font api on the rest of the html files Jul 13, 2017
plover-translations.js tweak hints Apr 4, 2017
steno-display.js * steno-display: fix single-digit and -D number strokes. Nov 2, 2016
style.css Revert underline on correctly-written words. Aug 17, 2018
two-key.html drop google font api on the rest of the html files Jul 13, 2017
type-jig.js Ooops, need to return exactly false when done. Aug 9, 2018
util.js Fix "Back to Menu" link for Gutenberg drills Feb 22, 2018
word-drill.js * form, gutenberg: factor out drills/utility functions. Sep 5, 2017
word-sets.js * form, word-sets: drill -nj plus -ld/-lt words. Sep 14, 2017

README.md

Steno Jig

This is a little browser-based widget for typing drills. I'm using it to teach myself stenotype. It's still early in development, but you may find it useful and/or fun. I have it set up with only a gh-pages branch which means it will show up on the web at: https://joshuagrams.github.io/steno-jig/

index.html has the basic structure you need to use it: for basic exercises you can pass an array of strings (each of which must be a single word with no leading or trailing whitespace or the answer matching won't work).

If the words represent a static text (i.e. a sequence of words in a particular order), that's all you need. If you want to set a time limit, you can also pass a number of seconds. If you pass true as the third argument, the words will be randomized and recycled until the time runs out.

I have a bunch of existing word sets in word-sets.js. One of these sets is the New General Service List: 2800 root words in common use, aimed at ESL students. It's organized as a set of root words with variations, so I've kept the base set that way, and set the code up so that each entry can be an array of words instead of just a single word. In this case, it will randomly shuffle the entries, and then randomly choose from the words in the current entry. But it may be better to use the NGSL_all_forms list which has been flattened and sorted by frequency.

There are also a bunch of translations in plover-translations.js so it can display hints for the next word. Many words have more than one set of legitimate strokes, and it will show all of them unless you filter the given options with TypeJig.longestTranslations or TypeJig.shortestTranslations.


numbers.html has a more complex example which overrides the exercise's nextWord function to generate a sentence at a time and spit out random sentences with lots of numbers in them.