#### 31.4.2 Commands For Manipulating The History

`accept-line (Newline or Return)`
  Accept the line regardless of where the cursor is. If this line is non-empty, it may be added to the history list for future recall with `add_history()`. If this line is a modified history line, the history line is restored to its original state.
`previous-history (C-p)`
  Move `back' through the history list, fetching the previous command.
`next-history (C-n)`
  Move `forward' through the history list, fetching the next command.
`beginning-of-history (M-<)`
  Move to the first line in the history.
`end-of-history (M->)`
  Move to the end of the input history, i.e., the line currently being entered.
`reverse-search-history (C-r)`
  Search backward starting at the current line and moving `up' through the history as necessary. This is an incremental search.
`forward-search-history (C-s)`
  Search forward starting at the current line and moving `down' through the the history as necessary. This is an incremental search.
`non-incremental-reverse-search-history (M-p)`
  Search backward starting at the current line and moving `up' through the history as necessary using a non-incremental search for a string supplied by the user.
`non-incremental-forward-search-history (M-n)`
  Search forward starting at the current line and moving `down' through the the history as necessary using a non-incremental search for a string supplied by the user.
`history-search-forward ()`
  Search forward through the history for the string of characters between the start of the current line and the point. This is a non-incremental search. By default, this command is unbound.
`history-search-backward ()`
  Search backward through the history for the string of characters between the start of the current line and the point. This is a non-incremental search. By default, this command is unbound.
`yank-nth-arg (M-C-y)`
  Insert the first argument to the previous command (usually the second word on the previous line) at point. With an argument n, insert the nth word from the previous command (the words in the previous command begin with word 0). A negative argument inserts the nth word from the end of the previous command. Once the argument n is computed, the argument is extracted as if the ‘`!n`’ history expansion had been specified.
`yank-last-arg (M-. or M-_)`
  Insert last argument to the previous command (the last word of the previous history entry). With an argument, behave exactly like `yank-nth-arg`. Successive calls to `yank-last-arg` move back through the history list, inserting the last argument of each line in turn. The history expansion facilities are used to extract the last argument, as if the ‘`!$`’ history expansion had been specified.