ranelpadon / ngram-type

Touch typing trainer using N-grams as data source, with options to customize the auto-generated lessons and specify the minimum typing performance needed. There are sound/color effects as well.
203 stars 38 forks source link

Subset ngrams by letter group #25

Open TeemuSailynoja opened 1 year ago

TeemuSailynoja commented 1 year ago

It would be cool to have an option to define a group of letters to subset the selection with. Thus allowing a layout agnostic way of quickly specifying a custom training for only a single hand, certain fingers, or home row keys.

ranelpadon commented 1 year ago

@TeemuSailynoja sorry for the late reply. Thanks for your suggestion. Could you please give a specific sample of those subsets and how they should be combined as training data? Thanks

TeemuSailynoja commented 1 year ago

Hi @ranelpadon. What I had in mind was another option in the "source" column, where one could specify a subsetting string. For example, if I would want to train just with the qwerty home row, I would give "asdfghjkl" and receive lessons only consisting of "as", "ll", "gh", "sa", and "ds".

So the app would check which bigrams only contain letters from the provided string and use that as a pool to draw from for the lessons. Otherwise, the lessons would follow the setting in "generator" and "threshold". Perhaps, it would be nice for the user to know, how large the subset is, and have a similar selector as currently in "scope".

I hope this made my idea more clear.

ruurtjan commented 10 months ago

This would be very helpful for people who are learning a new keyboard layout. It's common to learn a couple of keys at a time (for example, with colemak.academy).

Being able to drill common ngrams would be great!

bllngr commented 6 months ago

This would also allow combining ngram-type with keybr.com where you unlock letters one-by-one based on WPM.