I think anything except being able to customize it will always fall short for somebody.
Maybe provide a fourth option that will open a file called keyboard.ini or something. Just create a map pairing numbers, e.g.
85 4 < maps key 85 to base octave + 4 semitones (E)
86 12 < maps key 86 to base octave + 12 semitones (C 8va)
You need not worry about symbolic names for the keys, we can figure out the key-to-number mappings ourselves and share them.
Essentially, now, I can step at any length I want by double clicking when I leave my mouse cursor the desired number of rows below the selected row. This is pretty much essential for the way I have been writing chiptunes for the last 12 years!
Man, this is so rad! This was the missing piece for me. I am in heaven