- q | Q) echo 'CMD_QUIT';;
- h | H) echo 'CMD_MOVE_BACK';;
- l | L) echo 'CMD_MOVE_FORWARD';;
- f | F) echo 'CMD_FAVORITE_ADD';;
- r | R) echo 'CMD_FAVORITE_REMOVE';;
- s | S) echo 'CMD_SET_CURRENT';;
- *) echo 'CMD_UKNOWN';;
+ q | Q) _command='CMD_QUIT';;
+ h | H) _command='CMD_MOVE_BACK';;
+ l | L) _command='CMD_MOVE_FORWARD';;
+ f | F) _command='CMD_FAVORITE_ADD';;
+ r | R) _command='CMD_FAVORITE_REMOVE';;
+ s | S) _command='CMD_SET_CURRENT';;
+ :) read_command_goto;;
+ *)
+ printf 'Error: unknown command: %s\n' "$char" >&2
+ _command='CMD_UKNOWN';;