This is from the second phase of CodeKeyBoard Series
While typing, I realized, word correction, is not just about LV or Symspell or BK-Trees. I mean there are optimizations and choices of data-structures but there is something else.
In a T9 key prediction, a set of numbers map to a possible words, similarly, in a bigger keyboard, to accommodate for fat-fingers, we need to consider the proximity of each character - the keyboard is not ABCDE its QWERTY
QWERTY adjacency map (physical key neighbors) would somewhat look like this:
q: a s w r: d e f g t u: h i j k y
w: a d e q s t: f g h r y i: j k l o u
e: d f r s w y: g h j t u o: i k l p
a: q s w x z h: b g j m n t u y
s: a c d e q w x z j: h i k m n u y
d: c e f r s v w x k: i j l m o u
f: b c d e g r t v l: i k o p
g: b f h n r t v y
z: a s x b: c f g h n v
x: a c d s z n: b g h j m
c: d f s v x m: h j k n
v: b c d f g
So instead of jumping straight to pre-generating the deletes for Symspell, this is an easier addition that can be made on top of LV.
Here we can see, "search" come up, because the pattern of strokes match
- FUTO Swipe models
- NLnet: Gesture Typing for AOSP-derived Keyboards
- Kristensson & Zhai, IUI 2005 - "Relaxing stylus typing precision by geometric pattern matching"

Top comments (0)