Expand description
Makes a plan from your own typing: scores layouts on what you type, searches for a good one with simulated annealing, splits the move from QWERTY into small stages, and picks drill words from your vocabulary.
Finding the true best layout is a quadratic assignment problem, and “best” depends on how the scoring is weighted anyway. Many layouts tie, so each restart of the search lands somewhere slightly different; the summary says how much they agreed.
Structs§
- Counts
- How often each key, and each pair of keys in a row, was typed.
- Made
- What making a plan produced.
- Metrics
- Options
- Rng
- SplitMix64: small, seedable, and good enough for a search.
Constants§
- DEFAULT_
LOCK - ENOUGH
- Fewer messages than this is too little to optimise for.
- LONGEST_
LINK - Browsers and GitHub cope with links up to about this long.
- QWERTY
- USAGE
Functions§
- gather
- Reads your writing according to the options: what was found, and where from.
- make
- Makes a plan and its summary, and writes both. Progress goes to stderr.
- pretty
- The layout as three rows split into two hands.
- share_
url - A link that opens a new issue on very-normal with your summary filled in. You see it, and can change it, before anything is posted.