Expand description
Chord string → Action, as data rather than control flow.
Bindings live in a table because three things need to read them: the input
loop, help text, and — once the vim layer lands — a second table swapped in
wholesale. A match on KeyCode can be read by exactly one of those.