Systems, methods, and computer program products implementing techniques
for pattern-based keyboard controls. In one aspect, the techniques
include storing a set of interaction patterns, storing a set of keyboard
controls, and associating each of the interaction patterns with one or
more of the keyboard controls. Each interaction pattern includes a
description of a human computer interaction problem and solution to the
problem. Each keyboard control in the set of keyboard controls includes a
sequence of keystrokes.