If standard input is a terminal device, MDB provides some simple Emacs style facilities for editing the command line. The search, previous, and next commands in edit mode provide access to the history list. Only strings, not patterns, are matched when searching. In the list below, the notation for control characters is the caret character (^) followed by a character shown in uppercase. The notation for escape sequences is M- followed by a character. For example, M-f (pronounced meta- eff) is entered by pressing the ESC keyboard key followed by the f key, or by pressing the Meta key followed by the f key on keyboards that support a Meta key. A command line is committed and executed using RETURN or NEWLINE. The edit commands are:
Move cursor forward (right) one character.
Move cursor forward one word.
Move cursor backward (left) one character.
Move cursor backward one word.
Move cursor to start of line.
Move cursor to end of line.
Delete current character, if the current line is not empty. If the current line is empty, ^D denotes EOF and the debugger will exit.
(meta-backspace) Delete previous word.
Delete from the cursor to the end of the line.
Reprint the current line.
Transpose the current character with the next character.
Fetch the next command from the history. Each time ^N is entered, the next command forward in time is retrieved.
Fetch the previous command from the history. Each time ^P is entered, the next command backward in time is retrieved.
Search backward in the history for a previous command line containing string. The string should be terminated by a RETURN or NEWLINE. If string is omitted, the previous history element containing the most recent string is retrieved.
The editing mode also interprets the following user-defined sequences as editing commands. User-defined sequences can be read or modified using the stty(1) command.
User-defined erase character (usually ^H or ^?). Delete previous character.
User-defined interrupt character (usually ^C). Abort the current command and print a new prompt.
User-defined kill character (usually ^U). Kill the entire current command line.
User-defined quit character (usually ^\). Quit the debugger.
User-defined suspend character (usually ^Z). Suspend the debugger.
User-defined word erase character (usually ^W). Erase the preceding word.
Fetch the previous command from the history (same as ^P).
Fetch the next command from the history (same as ^N).
Move cursor backward one character (same as ^B).
Move cursor forward one character (same as ^F).