diff options
author | alk3pInjection <webmaster@raspii.tech> | 2024-02-04 16:16:35 +0800 |
---|---|---|
committer | alk3pInjection <webmaster@raspii.tech> | 2024-02-04 16:16:35 +0800 |
commit | 6ce4ebed87858ecdd79a1091367c6e961055daa9 (patch) | |
tree | 1c2a6a60531acf791531bbd9c8ac14c23ef8a66c /share/doc/gdb/Readline-Init-File-Syntax.html |
https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads
Change-Id: I7303388733328cd98ab9aa3c30236db67f2e9e9c
Diffstat (limited to 'share/doc/gdb/Readline-Init-File-Syntax.html')
-rw-r--r-- | share/doc/gdb/Readline-Init-File-Syntax.html | 674 |
1 files changed, 674 insertions, 0 deletions
diff --git a/share/doc/gdb/Readline-Init-File-Syntax.html b/share/doc/gdb/Readline-Init-File-Syntax.html new file mode 100644 index 0000000..261208d --- /dev/null +++ b/share/doc/gdb/Readline-Init-File-Syntax.html @@ -0,0 +1,674 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<html> +<!-- Copyright (C) 1988-2023 Free Software Foundation, Inc. + +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU Free Documentation License, Version 1.3 or +any later version published by the Free Software Foundation; with the +Invariant Sections being "Free Software" and "Free Software Needs +Free Documentation", with the Front-Cover Texts being "A GNU Manual," +and with the Back-Cover Texts as in (a) below. + +(a) The FSF's Back-Cover Text is: "You are free to copy and modify +this GNU Manual. Buying copies from GNU Press supports the FSF in +developing GNU and promoting software freedom." --> +<!-- Created by GNU Texinfo 5.1, http://www.gnu.org/software/texinfo/ --> +<head> +<title>Debugging with GDB: Readline Init File Syntax</title> + +<meta name="description" content="Debugging with GDB: Readline Init File Syntax"> +<meta name="keywords" content="Debugging with GDB: Readline Init File Syntax"> +<meta name="resource-type" content="document"> +<meta name="distribution" content="global"> +<meta name="Generator" content="makeinfo"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<link href="index.html#Top" rel="start" title="Top"> +<link href="Concept-Index.html#Concept-Index" rel="index" title="Concept Index"> +<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents"> +<link href="Readline-Init-File.html#Readline-Init-File" rel="up" title="Readline Init File"> +<link href="Conditional-Init-Constructs.html#Conditional-Init-Constructs" rel="next" title="Conditional Init Constructs"> +<link href="Readline-Init-File.html#Readline-Init-File" rel="previous" title="Readline Init File"> +<style type="text/css"> +<!-- +a.summary-letter {text-decoration: none} +blockquote.smallquotation {font-size: smaller} +div.display {margin-left: 3.2em} +div.example {margin-left: 3.2em} +div.indentedblock {margin-left: 3.2em} +div.lisp {margin-left: 3.2em} +div.smalldisplay {margin-left: 3.2em} +div.smallexample {margin-left: 3.2em} +div.smallindentedblock {margin-left: 3.2em; font-size: smaller} +div.smalllisp {margin-left: 3.2em} +kbd {font-style:oblique} +pre.display {font-family: inherit} +pre.format {font-family: inherit} +pre.menu-comment {font-family: serif} +pre.menu-preformatted {font-family: serif} +pre.smalldisplay {font-family: inherit; font-size: smaller} +pre.smallexample {font-size: smaller} +pre.smallformat {font-family: inherit; font-size: smaller} +pre.smalllisp {font-size: smaller} +span.nocodebreak {white-space:nowrap} +span.nolinebreak {white-space:nowrap} +span.roman {font-family:serif; font-weight:normal} +span.sansserif {font-family:sans-serif; font-weight:normal} +ul.no-bullet {list-style: none} +--> +</style> + + +</head> + +<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000"> +<a name="Readline-Init-File-Syntax"></a> +<div class="header"> +<p> +Next: <a href="Conditional-Init-Constructs.html#Conditional-Init-Constructs" accesskey="n" rel="next">Conditional Init Constructs</a>, Up: <a href="Readline-Init-File.html#Readline-Init-File" accesskey="u" rel="up">Readline Init File</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p> +</div> +<hr> +<a name="Readline-Init-File-Syntax-1"></a> +<h4 class="subsection">32.3.1 Readline Init File Syntax</h4> + +<p>There are only a few basic constructs allowed in the +Readline init file. Blank lines are ignored. +Lines beginning with a ‘<samp>#</samp>’ are comments. +Lines beginning with a ‘<samp>$</samp>’ indicate conditional +constructs (see <a href="Conditional-Init-Constructs.html#Conditional-Init-Constructs">Conditional Init Constructs</a>). Other lines +denote variable settings and key bindings. +</p> +<dl compact="compact"> +<dt>Variable Settings</dt> +<dd><p>You can modify the run-time behavior of Readline by +altering the values of variables in Readline +using the <code>set</code> command within the init file. +The syntax is simple: +</p> +<div class="example"> +<pre class="example">set <var>variable</var> <var>value</var> +</pre></div> + +<p>Here, for example, is how to +change from the default Emacs-like key binding to use +<code>vi</code> line editing commands: +</p> +<div class="example"> +<pre class="example">set editing-mode vi +</pre></div> + +<p>Variable names and values, where appropriate, are recognized without regard +to case. Unrecognized variable names are ignored. +</p> +<p>Boolean variables (those that can be set to on or off) are set to on if +the value is null or empty, <var>on</var> (case-insensitive), or 1. Any other +value results in the variable being set to off. +</p> + +<p>A great deal of run-time behavior is changeable with the following +variables. +</p> +<a name="index-variables_002c-readline"></a> +<dl compact="compact"> +<dt><code>bell-style</code></dt> +<dd><a name="index-bell_002dstyle"></a> +<p>Controls what happens when Readline wants to ring the terminal bell. +If set to ‘<samp>none</samp>’, Readline never rings the bell. If set to +‘<samp>visible</samp>’, Readline uses a visible bell if one is available. +If set to ‘<samp>audible</samp>’ (the default), Readline attempts to ring +the terminal’s bell. +</p> +</dd> +<dt><code>bind-tty-special-chars</code></dt> +<dd><a name="index-bind_002dtty_002dspecial_002dchars"></a> +<p>If set to ‘<samp>on</samp>’ (the default), Readline attempts to bind the control +characters treated specially by the kernel’s terminal driver to their +Readline equivalents. +</p> +</dd> +<dt><code>blink-matching-paren</code></dt> +<dd><a name="index-blink_002dmatching_002dparen"></a> +<p>If set to ‘<samp>on</samp>’, Readline attempts to briefly move the cursor to an +opening parenthesis when a closing parenthesis is inserted. The default +is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>colored-completion-prefix</code></dt> +<dd><a name="index-colored_002dcompletion_002dprefix"></a> +<p>If set to ‘<samp>on</samp>’, when listing completions, Readline displays the +common prefix of the set of possible completions using a different color. +The color definitions are taken from the value of the <code>LS_COLORS</code> +environment variable. +The default is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>colored-stats</code></dt> +<dd><a name="index-colored_002dstats"></a> +<p>If set to ‘<samp>on</samp>’, Readline displays possible completions using different +colors to indicate their file type. +The color definitions are taken from the value of the <code>LS_COLORS</code> +environment variable. +The default is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>comment-begin</code></dt> +<dd><a name="index-comment_002dbegin"></a> +<p>The string to insert at the beginning of the line when the +<code>insert-comment</code> command is executed. The default value +is <code>"#"</code>. +</p> +</dd> +<dt><code>completion-display-width</code></dt> +<dd><a name="index-completion_002ddisplay_002dwidth"></a> +<p>The number of screen columns used to display possible matches +when performing completion. +The value is ignored if it is less than 0 or greater than the terminal +screen width. +A value of 0 will cause matches to be displayed one per line. +The default value is -1. +</p> +</dd> +<dt><code>completion-ignore-case</code></dt> +<dd><a name="index-completion_002dignore_002dcase"></a> +<p>If set to ‘<samp>on</samp>’, Readline performs filename matching and completion +in a case-insensitive fashion. +The default value is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>completion-map-case</code></dt> +<dd><a name="index-completion_002dmap_002dcase"></a> +<p>If set to ‘<samp>on</samp>’, and <var>completion-ignore-case</var> is enabled, Readline +treats hyphens (‘<samp>-</samp>’) and underscores (‘<samp>_</samp>’) as equivalent when +performing case-insensitive filename matching and completion. +The default value is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>completion-prefix-display-length</code></dt> +<dd><a name="index-completion_002dprefix_002ddisplay_002dlength"></a> +<p>The length in characters of the common prefix of a list of possible +completions that is displayed without modification. When set to a +value greater than zero, common prefixes longer than this value are +replaced with an ellipsis when displaying possible completions. +</p> +</dd> +<dt><code>completion-query-items</code></dt> +<dd><a name="index-completion_002dquery_002ditems"></a> +<p>The number of possible completions that determines when the user is +asked whether the list of possibilities should be displayed. +If the number of possible completions is greater than or equal to this value, +Readline will ask whether or not the user wishes to view them; +otherwise, they are simply listed. +This variable must be set to an integer value greater than or equal to 0. +A negative value means Readline should never ask. +The default limit is <code>100</code>. +</p> +</dd> +<dt><code>convert-meta</code></dt> +<dd><a name="index-convert_002dmeta"></a> +<p>If set to ‘<samp>on</samp>’, Readline will convert characters with the +eighth bit set to an <small>ASCII</small> key sequence by stripping the eighth +bit and prefixing an <tt class="key">ESC</tt> character, converting them to a +meta-prefixed key sequence. The default value is ‘<samp>on</samp>’, but +will be set to ‘<samp>off</samp>’ if the locale is one that contains +eight-bit characters. +</p> +</dd> +<dt><code>disable-completion</code></dt> +<dd><a name="index-disable_002dcompletion"></a> +<p>If set to ‘<samp>On</samp>’, Readline will inhibit word completion. +Completion characters will be inserted into the line as if they had +been mapped to <code>self-insert</code>. The default is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>echo-control-characters</code></dt> +<dd><a name="index-echo_002dcontrol_002dcharacters"></a> +<p>When set to ‘<samp>on</samp>’, on operating systems that indicate they support it, +readline echoes a character corresponding to a signal generated from the +keyboard. The default is ‘<samp>on</samp>’. +</p> +</dd> +<dt><code>editing-mode</code></dt> +<dd><a name="index-editing_002dmode"></a> +<p>The <code>editing-mode</code> variable controls which default set of +key bindings is used. By default, Readline starts up in Emacs editing +mode, where the keystrokes are most similar to Emacs. This variable can be +set to either ‘<samp>emacs</samp>’ or ‘<samp>vi</samp>’. +</p> +</dd> +<dt><code>emacs-mode-string</code></dt> +<dd><a name="index-emacs_002dmode_002dstring"></a> +<p>If the <var>show-mode-in-prompt</var> variable is enabled, +this string is displayed immediately before the last line of the primary +prompt when emacs editing mode is active. The value is expanded like a +key binding, so the standard set of meta- and control prefixes and +backslash escape sequences is available. +Use the ‘<samp>\1</samp>’ and ‘<samp>\2</samp>’ escapes to begin and end sequences of +non-printing characters, which can be used to embed a terminal control +sequence into the mode string. +The default is ‘<samp>@</samp>’. +</p> +</dd> +<dt><code>enable-bracketed-paste</code></dt> +<dd><a name="index-enable_002dbracketed_002dpaste"></a> +<p>When set to ‘<samp>On</samp>’, Readline will configure the terminal in a way +that will enable it to insert each paste into the editing buffer as a +single string of characters, instead of treating each character as if +it had been read from the keyboard. This can prevent pasted characters +from being interpreted as editing commands. The default is ‘<samp>On</samp>’. +</p> +</dd> +<dt><code>enable-keypad</code></dt> +<dd><a name="index-enable_002dkeypad"></a> +<p>When set to ‘<samp>on</samp>’, Readline will try to enable the application +keypad when it is called. Some systems need this to enable the +arrow keys. The default is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>enable-meta-key</code></dt> +<dd><p>When set to ‘<samp>on</samp>’, Readline will try to enable any meta modifier +key the terminal claims to support when it is called. On many terminals, +the meta key is used to send eight-bit characters. +The default is ‘<samp>on</samp>’. +</p> +</dd> +<dt><code>expand-tilde</code></dt> +<dd><a name="index-expand_002dtilde"></a> +<p>If set to ‘<samp>on</samp>’, tilde expansion is performed when Readline +attempts word completion. The default is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>history-preserve-point</code></dt> +<dd><a name="index-history_002dpreserve_002dpoint"></a> +<p>If set to ‘<samp>on</samp>’, the history code attempts to place the point (the +current cursor position) at the +same location on each history line retrieved with <code>previous-history</code> +or <code>next-history</code>. The default is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>history-size</code></dt> +<dd><a name="index-history_002dsize"></a> +<p>Set the maximum number of history entries saved in the history list. +If set to zero, any existing history entries are deleted and no new entries +are saved. +If set to a value less than zero, the number of history entries is not +limited. +By default, the number of history entries is not limited. +If an attempt is made to set <var>history-size</var> to a non-numeric value, +the maximum number of history entries will be set to 500. +</p> +</dd> +<dt><code>horizontal-scroll-mode</code></dt> +<dd><a name="index-horizontal_002dscroll_002dmode"></a> +<p>This variable can be set to either ‘<samp>on</samp>’ or ‘<samp>off</samp>’. Setting it +to ‘<samp>on</samp>’ means that the text of the lines being edited will scroll +horizontally on a single screen line when they are longer than the width +of the screen, instead of wrapping onto a new screen line. +This variable is automatically set to ‘<samp>on</samp>’ for terminals of height 1. +By default, this variable is set to ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>input-meta</code></dt> +<dd><a name="index-input_002dmeta"></a> +<a name="index-meta_002dflag"></a> +<p>If set to ‘<samp>on</samp>’, Readline will enable eight-bit input (it +will not clear the eighth bit in the characters it reads), +regardless of what the terminal claims it can support. The +default value is ‘<samp>off</samp>’, but Readline will set it to ‘<samp>on</samp>’ if the +locale contains eight-bit characters. +The name <code>meta-flag</code> is a synonym for this variable. +</p> +</dd> +<dt><code>isearch-terminators</code></dt> +<dd><a name="index-isearch_002dterminators"></a> +<p>The string of characters that should terminate an incremental search without +subsequently executing the character as a command (see <a href="Searching.html#Searching">Searching</a>). +If this variable has not been given a value, the characters <tt class="key">ESC</tt> and +<kbd>C-J</kbd> will terminate an incremental search. +</p> +</dd> +<dt><code>keymap</code></dt> +<dd><a name="index-keymap"></a> +<p>Sets Readline’s idea of the current keymap for key binding commands. +Built-in <code>keymap</code> names are +<code>emacs</code>, +<code>emacs-standard</code>, +<code>emacs-meta</code>, +<code>emacs-ctlx</code>, +<code>vi</code>, +<code>vi-move</code>, +<code>vi-command</code>, and +<code>vi-insert</code>. +<code>vi</code> is equivalent to <code>vi-command</code> (<code>vi-move</code> is also a +synonym); <code>emacs</code> is equivalent to <code>emacs-standard</code>. +Applications may add additional names. +The default value is <code>emacs</code>. +The value of the <code>editing-mode</code> variable also affects the +default keymap. +</p> +</dd> +<dt><code>keyseq-timeout</code></dt> +<dd><p>Specifies the duration Readline will wait for a character when reading an +ambiguous key sequence (one that can form a complete key sequence using +the input read so far, or can take additional input to complete a longer +key sequence). +If no input is received within the timeout, Readline will use the shorter +but complete key sequence. +Readline uses this value to determine whether or not input is +available on the current input source (<code>rl_instream</code> by default). +The value is specified in milliseconds, so a value of 1000 means that +Readline will wait one second for additional input. +If this variable is set to a value less than or equal to zero, or to a +non-numeric value, Readline will wait until another key is pressed to +decide which key sequence to complete. +The default value is <code>500</code>. +</p> +</dd> +<dt><code>mark-directories</code></dt> +<dd><p>If set to ‘<samp>on</samp>’, completed directory names have a slash +appended. The default is ‘<samp>on</samp>’. +</p> +</dd> +<dt><code>mark-modified-lines</code></dt> +<dd><a name="index-mark_002dmodified_002dlines"></a> +<p>This variable, when set to ‘<samp>on</samp>’, causes Readline to display an +asterisk (‘<samp>*</samp>’) at the start of history lines which have been modified. +This variable is ‘<samp>off</samp>’ by default. +</p> +</dd> +<dt><code>mark-symlinked-directories</code></dt> +<dd><a name="index-mark_002dsymlinked_002ddirectories"></a> +<p>If set to ‘<samp>on</samp>’, completed names which are symbolic links +to directories have a slash appended (subject to the value of +<code>mark-directories</code>). +The default is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>match-hidden-files</code></dt> +<dd><a name="index-match_002dhidden_002dfiles"></a> +<p>This variable, when set to ‘<samp>on</samp>’, causes Readline to match files whose +names begin with a ‘<samp>.</samp>’ (hidden files) when performing filename +completion. +If set to ‘<samp>off</samp>’, the leading ‘<samp>.</samp>’ must be +supplied by the user in the filename to be completed. +This variable is ‘<samp>on</samp>’ by default. +</p> +</dd> +<dt><code>menu-complete-display-prefix</code></dt> +<dd><a name="index-menu_002dcomplete_002ddisplay_002dprefix"></a> +<p>If set to ‘<samp>on</samp>’, menu completion displays the common prefix of the +list of possible completions (which may be empty) before cycling through +the list. The default is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>output-meta</code></dt> +<dd><a name="index-output_002dmeta"></a> +<p>If set to ‘<samp>on</samp>’, Readline will display characters with the +eighth bit set directly rather than as a meta-prefixed escape +sequence. +The default is ‘<samp>off</samp>’, but Readline will set it to ‘<samp>on</samp>’ if the +locale contains eight-bit characters. +</p> +</dd> +<dt><code>page-completions</code></dt> +<dd><a name="index-page_002dcompletions"></a> +<p>If set to ‘<samp>on</samp>’, Readline uses an internal <code>more</code>-like pager +to display a screenful of possible completions at a time. +This variable is ‘<samp>on</samp>’ by default. +</p> +</dd> +<dt><code>print-completions-horizontally</code></dt> +<dd><p>If set to ‘<samp>on</samp>’, Readline will display completions with matches +sorted horizontally in alphabetical order, rather than down the screen. +The default is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>revert-all-at-newline</code></dt> +<dd><a name="index-revert_002dall_002dat_002dnewline"></a> +<p>If set to ‘<samp>on</samp>’, Readline will undo all changes to history lines +before returning when <code>accept-line</code> is executed. By default, +history lines may be modified and retain individual undo lists across +calls to <code>readline</code>. The default is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>show-all-if-ambiguous</code></dt> +<dd><a name="index-show_002dall_002dif_002dambiguous"></a> +<p>This alters the default behavior of the completion functions. If +set to ‘<samp>on</samp>’, +words which have more than one possible completion cause the +matches to be listed immediately instead of ringing the bell. +The default value is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>show-all-if-unmodified</code></dt> +<dd><a name="index-show_002dall_002dif_002dunmodified"></a> +<p>This alters the default behavior of the completion functions in +a fashion similar to <var>show-all-if-ambiguous</var>. +If set to ‘<samp>on</samp>’, +words which have more than one possible completion without any +possible partial completion (the possible completions don’t share +a common prefix) cause the matches to be listed immediately instead +of ringing the bell. +The default value is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>show-mode-in-prompt</code></dt> +<dd><a name="index-show_002dmode_002din_002dprompt"></a> +<p>If set to ‘<samp>on</samp>’, add a string to the beginning of the prompt +indicating the editing mode: emacs, vi command, or vi insertion. +The mode strings are user-settable (e.g., <var>emacs-mode-string</var>). +The default value is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>skip-completed-text</code></dt> +<dd><a name="index-skip_002dcompleted_002dtext"></a> +<p>If set to ‘<samp>on</samp>’, this alters the default completion behavior when +inserting a single match into the line. It’s only active when +performing completion in the middle of a word. If enabled, readline +does not insert characters from the completion that match characters +after point in the word being completed, so portions of the word +following the cursor are not duplicated. +For instance, if this is enabled, attempting completion when the cursor +is after the ‘<samp>e</samp>’ in ‘<samp>Makefile</samp>’ will result in ‘<samp>Makefile</samp>’ +rather than ‘<samp>Makefilefile</samp>’, assuming there is a single possible +completion. +The default value is ‘<samp>off</samp>’. +</p> +</dd> +<dt><code>vi-cmd-mode-string</code></dt> +<dd><a name="index-vi_002dcmd_002dmode_002dstring"></a> +<p>If the <var>show-mode-in-prompt</var> variable is enabled, +this string is displayed immediately before the last line of the primary +prompt when vi editing mode is active and in command mode. +The value is expanded like a +key binding, so the standard set of meta- and control prefixes and +backslash escape sequences is available. +Use the ‘<samp>\1</samp>’ and ‘<samp>\2</samp>’ escapes to begin and end sequences of +non-printing characters, which can be used to embed a terminal control +sequence into the mode string. +The default is ‘<samp>(cmd)</samp>’. +</p> +</dd> +<dt><code>vi-ins-mode-string</code></dt> +<dd><a name="index-vi_002dins_002dmode_002dstring"></a> +<p>If the <var>show-mode-in-prompt</var> variable is enabled, +this string is displayed immediately before the last line of the primary +prompt when vi editing mode is active and in insertion mode. +The value is expanded like a +key binding, so the standard set of meta- and control prefixes and +backslash escape sequences is available. +Use the ‘<samp>\1</samp>’ and ‘<samp>\2</samp>’ escapes to begin and end sequences of +non-printing characters, which can be used to embed a terminal control +sequence into the mode string. +The default is ‘<samp>(ins)</samp>’. +</p> +</dd> +<dt><code>visible-stats</code></dt> +<dd><a name="index-visible_002dstats"></a> +<p>If set to ‘<samp>on</samp>’, a character denoting a file’s type +is appended to the filename when listing possible +completions. The default is ‘<samp>off</samp>’. +</p> +</dd> +</dl> + +</dd> +<dt>Key Bindings</dt> +<dd><p>The syntax for controlling key bindings in the init file is +simple. First you need to find the name of the command that you +want to change. The following sections contain tables of the command +name, the default keybinding, if any, and a short description of what +the command does. +</p> +<p>Once you know the name of the command, simply place on a line +in the init file the name of the key +you wish to bind the command to, a colon, and then the name of the +command. +There can be no space between the key name and the colon – that will be +interpreted as part of the key name. +The name of the key can be expressed in different ways, depending on +what you find most comfortable. +</p> +<p>In addition to command names, readline allows keys to be bound +to a string that is inserted when the key is pressed (a <var>macro</var>). +</p> + +<dl compact="compact"> +<dt><var>keyname</var>: <var><span class="nolinebreak">function-name</span></var> or <var>macro</var><!-- /@w --></dt> +<dd><p><var>keyname</var> is the name of a key spelled out in English. For example: +</p><div class="example"> +<pre class="example">Control-u: universal-argument +Meta-Rubout: backward-kill-word +Control-o: "> output" +</pre></div> + +<p>In the example above, <kbd>C-u</kbd> is bound to the function +<code>universal-argument</code>, +<kbd>M-DEL</kbd> is bound to the function <code>backward-kill-word</code>, and +<kbd>C-o</kbd> is bound to run the macro +expressed on the right hand side (that is, to insert the text +‘<samp>> output</samp>’ into the line). +</p> +<p>A number of symbolic character names are recognized while +processing this key binding syntax: +<var>DEL</var>, +<var>ESC</var>, +<var>ESCAPE</var>, +<var>LFD</var>, +<var>NEWLINE</var>, +<var>RET</var>, +<var>RETURN</var>, +<var>RUBOUT</var>, +<var>SPACE</var>, +<var>SPC</var>, +and +<var>TAB</var>. +</p> +</dd> +<dt>"<var>keyseq</var>": <var><span class="nolinebreak">function-name</span></var> or <var>macro</var><!-- /@w --></dt> +<dd><p><var>keyseq</var> differs from <var>keyname</var> above in that strings +denoting an entire key sequence can be specified, by placing +the key sequence in double quotes. Some <small>GNU</small> Emacs style key +escapes can be used, as in the following example, but the +special character names are not recognized. +</p> +<div class="example"> +<pre class="example">"\C-u": universal-argument +"\C-x\C-r": re-read-init-file +"\e[11~": "Function Key 1" +</pre></div> + +<p>In the above example, <kbd>C-u</kbd> is again bound to the function +<code>universal-argument</code> (just as it was in the first example), +‘<samp><kbd>C-x</kbd> <kbd>C-r</kbd></samp>’ is bound to the function <code>re-read-init-file</code>, +and ‘<samp><span class="key">ESC</span> <span class="key">[</span> <span class="key">1</span> <span class="key">1</span> <span class="key">~</span></samp>’ is bound to insert +the text ‘<samp>Function Key 1</samp>’. +</p> +</dd> +</dl> + +<p>The following <small>GNU</small> Emacs style escape sequences are available when +specifying key sequences: +</p> +<dl compact="compact"> +<dt><code><kbd>\C-</kbd></code></dt> +<dd><p>control prefix +</p></dd> +<dt><code><kbd>\M-</kbd></code></dt> +<dd><p>meta prefix +</p></dd> +<dt><code><kbd>\e</kbd></code></dt> +<dd><p>an escape character +</p></dd> +<dt><code><kbd>\\</kbd></code></dt> +<dd><p>backslash +</p></dd> +<dt><code><kbd>\"</kbd></code></dt> +<dd><p><tt class="key">"</tt>, a double quotation mark +</p></dd> +<dt><code><kbd>\'</kbd></code></dt> +<dd><p><tt class="key">'</tt>, a single quote or apostrophe +</p></dd> +</dl> + +<p>In addition to the <small>GNU</small> Emacs style escape sequences, a second +set of backslash escapes is available: +</p> +<dl compact="compact"> +<dt><code>\a</code></dt> +<dd><p>alert (bell) +</p></dd> +<dt><code>\b</code></dt> +<dd><p>backspace +</p></dd> +<dt><code>\d</code></dt> +<dd><p>delete +</p></dd> +<dt><code>\f</code></dt> +<dd><p>form feed +</p></dd> +<dt><code>\n</code></dt> +<dd><p>newline +</p></dd> +<dt><code>\r</code></dt> +<dd><p>carriage return +</p></dd> +<dt><code>\t</code></dt> +<dd><p>horizontal tab +</p></dd> +<dt><code>\v</code></dt> +<dd><p>vertical tab +</p></dd> +<dt><code>\<var>nnn</var></code></dt> +<dd><p>the eight-bit character whose value is the octal value <var>nnn</var> +(one to three digits) +</p></dd> +<dt><code>\x<var>HH</var></code></dt> +<dd><p>the eight-bit character whose value is the hexadecimal value <var>HH</var> +(one or two hex digits) +</p></dd> +</dl> + +<p>When entering the text of a macro, single or double quotes must +be used to indicate a macro definition. +Unquoted text is assumed to be a function name. +In the macro body, the backslash escapes described above are expanded. +Backslash will quote any other character in the macro text, +including ‘<samp>"</samp>’ and ‘<samp>'</samp>’. +For example, the following binding will make ‘<samp><kbd>C-x</kbd> \</samp>’ +insert a single ‘<samp>\</samp>’ into the line: +</p><div class="example"> +<pre class="example">"\C-x\\": "\\" +</pre></div> + +</dd> +</dl> + +<hr> +<div class="header"> +<p> +Next: <a href="Conditional-Init-Constructs.html#Conditional-Init-Constructs" accesskey="n" rel="next">Conditional Init Constructs</a>, Up: <a href="Readline-Init-File.html#Readline-Init-File" accesskey="u" rel="up">Readline Init File</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p> +</div> + + + +</body> +</html> |