@c -*- texinfo -*-

@chapter Key Bindings

@float Figure,fig:screenshot_keybindings
@center @image{screenshots/bashstyle-ng_keybindings,,, BashStyle-NG Key Bindings, png}
@caption{Key Bindings}
@end float

@defvr {Setting} use_keybindingscfg Customize Keybindings
This master switch will make @b{BashStyle-NG} adjust the Key Bindings for
@code{readline}.
@end defvr

@heading @b{BashStyle-NG} additional Key Bindings

@table @code

@item complete-path
For the string the cursor currently is at, use @code{which} to complete
it's file path

@item list-keys
list all currently bound commands and their key binding

@item plocate
For the string the cursor currently is at, use @code{plocate} to search for it

@item plocate-file
like @code{plocate} Key Binding, but explicitely only searches for the basename
(filename, no directory name)

@item rerun-root
rerun the previous command as root

@end table

@heading Readline standard Key Bindings

@table @code

@item undo
Undo the last editing command.  Remembered separately for each line.

@item upcase_word
Uppercase the current or next word.

@item capitalize_word
Capitalize the current or next word.

@item downcase_word
Lowercase the current or next word.

@item transpose_words
Drag the word before point past the word after point, moving point past that word.

@item transpose_chars
Drag the character before point forward over the character at point, moving point forward as well.

@item unix_word_rubout
Kill the word behind point, using whitespace as a word boundary.

@item kill_word
Kill from point to the end of the current word, or if between words, to the end of the next word.

@item possible_filename_completions
List the possible completions for the text before point as a filename.

@item possible_hostname_completions
List the possible completions for the text before point as a hostname.

@item possible_username_completions
List the possible completions for the text before point as a username.

@item possible_variable_completions
List the possible completions for the text before point as a shell variable.

@item kill_line
Kill the text from point to the end of the line.

@item unix_line_discard
Kill backward from point to the beginning of the line.

@item beginning_of_line
Move to the start of the current line.

@item end_of_line
Move to the end of the line.

@item clear_screen
Clear the screen, leaving the current line at the top of the screen.

@item history_search_forward
Search forward through the history for the string of characters between the start of the current line and point.

@item history_search_backward
Search backward through the history for the string of characters between the start of the current line and point.

@item menu_complete
Similar to @code{complete}, but replaces the word to be completed with a single match from the list of possible completions.

@item alias_expand_line
Expand any aliases on the current line.

@item backward_char
Move back one character.

@item backward_word
Move back to the start of the current or previous word.

@item backward_delete_char
Delete the character behind the cursor.

@item delete_char
Delete the character at point.

@item copy_backward_word
Copy the word before point to the kill buffer without deleting it.

@item copy_forward_word
Copy the word after point to the kill buffer without deleting it.

@item forward_char
Move forward one character.

@item forward_word
Move forward to the end of the next word.

@item overwrite_mode
Toggle overwrite mode.

@item menu_complete_backward
Identical to @code{menu_complete}, but moves backward through the list of possible completions.

@item backward_kill_line
Kill backward from point to the beginning of the line.

@item next_screen_line
Move the cursor to the next physical screen line, if the current logical line wraps.

@item previous_screen_line
Move the cursor to the previous physical screen line, if the current logical line wraps.

@item spell_correct_word
Perform spelling correction on the current word.

@item fetch_history
Fetch the history line specified by the current numeric argument.

@item rl_clear_display
Clear the screen and the scrollback buffer entirely.

@end table