Annotation of embedaddon/readline/doc/rluserman.html, revision 1.1
1.1 ! misho 1: <HTML>
! 2: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
! 3: <!-- Created on February, 11 2014 by texi2html 1.64 -->
! 4: <!--
! 5: Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
! 6: Karl Berry <karl@freefriends.org>
! 7: Olaf Bachmann <obachman@mathematik.uni-kl.de>
! 8: and many others.
! 9: Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de>
! 10: Send bugs and suggestions to <texi2html@mathematik.uni-kl.de>
! 11:
! 12: -->
! 13: <HEAD>
! 14: <TITLE>GNU Readline Library: </TITLE>
! 15:
! 16: <META NAME="description" CONTENT="GNU Readline Library: ">
! 17: <META NAME="keywords" CONTENT="GNU Readline Library: ">
! 18: <META NAME="resource-type" CONTENT="document">
! 19: <META NAME="distribution" CONTENT="global">
! 20: <META NAME="Generator" CONTENT="texi2html 1.64">
! 21:
! 22: </HEAD>
! 23:
! 24: <BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000">
! 25:
! 26: <A NAME="SEC_Top"></A>
! 27: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 28: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 29: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 30: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 31: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 32: </TR></TABLE>
! 33: <H1>GNU Readline Library</H1></P><P>
! 34:
! 35: This document describes the end user interface of the GNU Readline Library,
! 36: a utility which aids in the consistency of user interface across discrete
! 37: programs which provide a command line interface.
! 38: The Readline home page is <A HREF="http://www.gnu.org/software/readline/">http://www.gnu.org/software/readline/</A>.
! 39: </P><P>
! 40:
! 41: <BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
! 42: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC1">1. Command Line Editing</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">GNU Readline User's Manual.</TD></TR>
! 43: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC23">A. GNU Free Documentation License</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">License for copying this manual.</TD></TR>
! 44: </TABLE></BLOCKQUOTE>
! 45: <P>
! 46:
! 47: <HR SIZE=1>
! 48: <A NAME="SEC1"></A>
! 49: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 50: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top"> < </A>]</TD>
! 51: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC2"> > </A>]</TD>
! 52: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD>
! 53: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top"> Up </A>]</TD>
! 54: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC23"> >> </A>]</TD>
! 55: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 56: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 57: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 58: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 59: </TR></TABLE>
! 60: <A NAME="Command Line Editing"></A>
! 61: <H1> 1. Command Line Editing </H1>
! 62: <!--docid::SEC1::-->
! 63: <P>
! 64:
! 65: This chapter describes the basic features of the GNU
! 66: command line editing interface.
! 67: </P><P>
! 68:
! 69: <BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
! 70: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC2">1.1 Introduction to Line Editing</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Notation used in this text.</TD></TR>
! 71: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC3">1.2 Readline Interaction</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">The minimum set of commands for editing a line.</TD></TR>
! 72: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC9">1.3 Readline Init File</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Customizing Readline from a user's view.</TD></TR>
! 73: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC13">1.4 Bindable Readline Commands</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">A description of most of the Readline commands
! 74: available for binding</TD></TR>
! 75: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC22">1.5 Readline vi Mode</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">A short description of how to make Readline
! 76: behave like the vi editor.</TD></TR>
! 77: </TABLE></BLOCKQUOTE>
! 78: <P>
! 79:
! 80: <A NAME="Introduction and Notation"></A>
! 81: <HR SIZE="6">
! 82: <A NAME="SEC2"></A>
! 83: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 84: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> < </A>]</TD>
! 85: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> > </A>]</TD>
! 86: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD>
! 87: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> Up </A>]</TD>
! 88: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC23"> >> </A>]</TD>
! 89: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 90: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 91: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 92: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 93: </TR></TABLE>
! 94: <H2> 1.1 Introduction to Line Editing </H2>
! 95: <!--docid::SEC2::-->
! 96: <P>
! 97:
! 98: The following paragraphs describe the notation used to represent
! 99: keystrokes.
! 100: </P><P>
! 101:
! 102: The text <KBD>C-k</KBD> is read as `Control-K' and describes the character
! 103: produced when the <KBD>k</KBD> key is pressed while the Control key
! 104: is depressed.
! 105: </P><P>
! 106:
! 107: The text <KBD>M-k</KBD> is read as `Meta-K' and describes the character
! 108: produced when the Meta key (if you have one) is depressed, and the <KBD>k</KBD>
! 109: key is pressed.
! 110: The Meta key is labeled <KBD>ALT</KBD> on many keyboards.
! 111: On keyboards with two keys labeled <KBD>ALT</KBD> (usually to either side of
! 112: the space bar), the <KBD>ALT</KBD> on the left side is generally set to
! 113: work as a Meta key.
! 114: The <KBD>ALT</KBD> key on the right may also be configured to work as a
! 115: Meta key or may be configured as some other modifier, such as a
! 116: Compose key for typing accented characters.
! 117: </P><P>
! 118:
! 119: If you do not have a Meta or <KBD>ALT</KBD> key, or another key working as
! 120: a Meta key, the identical keystroke can be generated by typing <KBD>ESC</KBD>
! 121: <EM>first</EM>, and then typing <KBD>k</KBD>.
! 122: Either process is known as <EM>metafying</EM> the <KBD>k</KBD> key.
! 123: </P><P>
! 124:
! 125: The text <KBD>M-C-k</KBD> is read as `Meta-Control-k' and describes the
! 126: character produced by <EM>metafying</EM> <KBD>C-k</KBD>.
! 127: </P><P>
! 128:
! 129: In addition, several keys have their own names. Specifically,
! 130: <KBD>DEL</KBD>, <KBD>ESC</KBD>, <KBD>LFD</KBD>, <KBD>SPC</KBD>, <KBD>RET</KBD>, and <KBD>TAB</KBD> all
! 131: stand for themselves when seen in this text, or in an init file
! 132: (see section <A HREF="rluserman.html#SEC9">1.3 Readline Init File</A>).
! 133: If your keyboard lacks a <KBD>LFD</KBD> key, typing <KBD>C-j</KBD> will
! 134: produce the desired character.
! 135: The <KBD>RET</KBD> key may be labeled <KBD>Return</KBD> or <KBD>Enter</KBD> on
! 136: some keyboards.
! 137: </P><P>
! 138:
! 139: <A NAME="Readline Interaction"></A>
! 140: <HR SIZE="6">
! 141: <A NAME="SEC3"></A>
! 142: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 143: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC2"> < </A>]</TD>
! 144: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC4"> > </A>]</TD>
! 145: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> << </A>]</TD>
! 146: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> Up </A>]</TD>
! 147: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> >> </A>]</TD>
! 148: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 149: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 150: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 151: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 152: </TR></TABLE>
! 153: <H2> 1.2 Readline Interaction </H2>
! 154: <!--docid::SEC3::-->
! 155: <P>
! 156:
! 157: Often during an interactive session you type in a long line of text,
! 158: only to notice that the first word on the line is misspelled. The
! 159: Readline library gives you a set of commands for manipulating the text
! 160: as you type it in, allowing you to just fix your typo, and not forcing
! 161: you to retype the majority of the line. Using these editing commands,
! 162: you move the cursor to the place that needs correction, and delete or
! 163: insert the text of the corrections. Then, when you are satisfied with
! 164: the line, you simply press <KBD>RET</KBD>. You do not have to be at the
! 165: end of the line to press <KBD>RET</KBD>; the entire line is accepted
! 166: regardless of the location of the cursor within the line.
! 167: </P><P>
! 168:
! 169: <BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
! 170: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC4">1.2.1 Readline Bare Essentials</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">The least you need to know about Readline.</TD></TR>
! 171: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC5">1.2.2 Readline Movement Commands</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Moving about the input line.</TD></TR>
! 172: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC6">1.2.3 Readline Killing Commands</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">How to delete text, and how to get it back!</TD></TR>
! 173: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC7">1.2.4 Readline Arguments</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Giving numeric arguments to commands.</TD></TR>
! 174: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC8">1.2.5 Searching for Commands in the History</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Searching through previous lines.</TD></TR>
! 175: </TABLE></BLOCKQUOTE>
! 176: <P>
! 177:
! 178: <A NAME="Readline Bare Essentials"></A>
! 179: <HR SIZE="6">
! 180: <A NAME="SEC4"></A>
! 181: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 182: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> < </A>]</TD>
! 183: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC5"> > </A>]</TD>
! 184: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> << </A>]</TD>
! 185: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> Up </A>]</TD>
! 186: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> >> </A>]</TD>
! 187: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 188: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 189: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 190: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 191: </TR></TABLE>
! 192: <H3> 1.2.1 Readline Bare Essentials </H3>
! 193: <!--docid::SEC4::-->
! 194: <P>
! 195:
! 196: In order to enter characters into the line, simply type them. The typed
! 197: character appears where the cursor was, and then the cursor moves one
! 198: space to the right. If you mistype a character, you can use your
! 199: erase character to back up and delete the mistyped character.
! 200: </P><P>
! 201:
! 202: Sometimes you may mistype a character, and
! 203: not notice the error until you have typed several other characters. In
! 204: that case, you can type <KBD>C-b</KBD> to move the cursor to the left, and then
! 205: correct your mistake. Afterwards, you can move the cursor to the right
! 206: with <KBD>C-f</KBD>.
! 207: </P><P>
! 208:
! 209: When you add text in the middle of a line, you will notice that characters
! 210: to the right of the cursor are `pushed over' to make room for the text
! 211: that you have inserted. Likewise, when you delete text behind the cursor,
! 212: characters to the right of the cursor are `pulled back' to fill in the
! 213: blank space created by the removal of the text. A list of the bare
! 214: essentials for editing the text of an input line follows.
! 215: </P><P>
! 216:
! 217: <DL COMPACT>
! 218: <DT><KBD>C-b</KBD>
! 219: <DD>Move back one character.
! 220: <DT><KBD>C-f</KBD>
! 221: <DD>Move forward one character.
! 222: <DT><KBD>DEL</KBD> or <KBD>Backspace</KBD>
! 223: <DD>Delete the character to the left of the cursor.
! 224: <DT><KBD>C-d</KBD>
! 225: <DD>Delete the character underneath the cursor.
! 226: <DT>Printing characters
! 227: <DD>Insert the character into the line at the cursor.
! 228: <DT><KBD>C-_</KBD> or <KBD>C-x C-u</KBD>
! 229: <DD>Undo the last editing command. You can undo all the way back to an
! 230: empty line.
! 231: </DL>
! 232: <P>
! 233:
! 234: (Depending on your configuration, the <KBD>Backspace</KBD> key be set to
! 235: delete the character to the left of the cursor and the <KBD>DEL</KBD> key set
! 236: to delete the character underneath the cursor, like <KBD>C-d</KBD>, rather
! 237: than the character to the left of the cursor.)
! 238: </P><P>
! 239:
! 240: <A NAME="Readline Movement Commands"></A>
! 241: <HR SIZE="6">
! 242: <A NAME="SEC5"></A>
! 243: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 244: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC4"> < </A>]</TD>
! 245: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC6"> > </A>]</TD>
! 246: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC6"> << </A>]</TD>
! 247: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> Up </A>]</TD>
! 248: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> >> </A>]</TD>
! 249: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 250: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 251: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 252: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 253: </TR></TABLE>
! 254: <H3> 1.2.2 Readline Movement Commands </H3>
! 255: <!--docid::SEC5::-->
! 256: <P>
! 257:
! 258: The above table describes the most basic keystrokes that you need
! 259: in order to do editing of the input line. For your convenience, many
! 260: other commands have been added in addition to <KBD>C-b</KBD>, <KBD>C-f</KBD>,
! 261: <KBD>C-d</KBD>, and <KBD>DEL</KBD>. Here are some commands for moving more rapidly
! 262: about the line.
! 263: </P><P>
! 264:
! 265: <DL COMPACT>
! 266: <DT><KBD>C-a</KBD>
! 267: <DD>Move to the start of the line.
! 268: <DT><KBD>C-e</KBD>
! 269: <DD>Move to the end of the line.
! 270: <DT><KBD>M-f</KBD>
! 271: <DD>Move forward a word, where a word is composed of letters and digits.
! 272: <DT><KBD>M-b</KBD>
! 273: <DD>Move backward a word.
! 274: <DT><KBD>C-l</KBD>
! 275: <DD>Clear the screen, reprinting the current line at the top.
! 276: </DL>
! 277: <P>
! 278:
! 279: Notice how <KBD>C-f</KBD> moves forward a character, while <KBD>M-f</KBD> moves
! 280: forward a word. It is a loose convention that control keystrokes
! 281: operate on characters while meta keystrokes operate on words.
! 282: </P><P>
! 283:
! 284: <A NAME="Readline Killing Commands"></A>
! 285: <HR SIZE="6">
! 286: <A NAME="SEC6"></A>
! 287: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 288: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC5"> < </A>]</TD>
! 289: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC7"> > </A>]</TD>
! 290: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC7"> << </A>]</TD>
! 291: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> Up </A>]</TD>
! 292: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> >> </A>]</TD>
! 293: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 294: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 295: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 296: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 297: </TR></TABLE>
! 298: <H3> 1.2.3 Readline Killing Commands </H3>
! 299: <!--docid::SEC6::-->
! 300: <P>
! 301:
! 302: <A NAME="IDX1"></A>
! 303: <A NAME="IDX2"></A>
! 304: </P><P>
! 305:
! 306: <EM>Killing</EM> text means to delete the text from the line, but to save
! 307: it away for later use, usually by <EM>yanking</EM> (re-inserting)
! 308: it back into the line.
! 309: (`Cut' and `paste' are more recent jargon for `kill' and `yank'.)
! 310: </P><P>
! 311:
! 312: If the description for a command says that it `kills' text, then you can
! 313: be sure that you can get the text back in a different (or the same)
! 314: place later.
! 315: </P><P>
! 316:
! 317: When you use a kill command, the text is saved in a <EM>kill-ring</EM>.
! 318: Any number of consecutive kills save all of the killed text together, so
! 319: that when you yank it back, you get it all. The kill
! 320: ring is not line specific; the text that you killed on a previously
! 321: typed line is available to be yanked back later, when you are typing
! 322: another line.
! 323: <A NAME="IDX3"></A>
! 324: </P><P>
! 325:
! 326: Here is the list of commands for killing text.
! 327: </P><P>
! 328:
! 329: <DL COMPACT>
! 330: <DT><KBD>C-k</KBD>
! 331: <DD>Kill the text from the current cursor position to the end of the line.
! 332: <P>
! 333:
! 334: <DT><KBD>M-d</KBD>
! 335: <DD>Kill from the cursor to the end of the current word, or, if between
! 336: words, to the end of the next word.
! 337: Word boundaries are the same as those used by <KBD>M-f</KBD>.
! 338: <P>
! 339:
! 340: <DT><KBD>M-<KBD>DEL</KBD></KBD>
! 341: <DD>Kill from the cursor the start of the current word, or, if between
! 342: words, to the start of the previous word.
! 343: Word boundaries are the same as those used by <KBD>M-b</KBD>.
! 344: <P>
! 345:
! 346: <DT><KBD>C-w</KBD>
! 347: <DD>Kill from the cursor to the previous whitespace. This is different than
! 348: <KBD>M-<KBD>DEL</KBD></KBD> because the word boundaries differ.
! 349: <P>
! 350:
! 351: </DL>
! 352: <P>
! 353:
! 354: Here is how to <EM>yank</EM> the text back into the line. Yanking
! 355: means to copy the most-recently-killed text from the kill buffer.
! 356: </P><P>
! 357:
! 358: <DL COMPACT>
! 359: <DT><KBD>C-y</KBD>
! 360: <DD>Yank the most recently killed text back into the buffer at the cursor.
! 361: <P>
! 362:
! 363: <DT><KBD>M-y</KBD>
! 364: <DD>Rotate the kill-ring, and yank the new top. You can only do this if
! 365: the prior command is <KBD>C-y</KBD> or <KBD>M-y</KBD>.
! 366: </DL>
! 367: <P>
! 368:
! 369: <A NAME="Readline Arguments"></A>
! 370: <HR SIZE="6">
! 371: <A NAME="SEC7"></A>
! 372: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 373: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC6"> < </A>]</TD>
! 374: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC8"> > </A>]</TD>
! 375: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC8"> << </A>]</TD>
! 376: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> Up </A>]</TD>
! 377: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> >> </A>]</TD>
! 378: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 379: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 380: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 381: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 382: </TR></TABLE>
! 383: <H3> 1.2.4 Readline Arguments </H3>
! 384: <!--docid::SEC7::-->
! 385: <P>
! 386:
! 387: You can pass numeric arguments to Readline commands. Sometimes the
! 388: argument acts as a repeat count, other times it is the <I>sign</I> of the
! 389: argument that is significant. If you pass a negative argument to a
! 390: command which normally acts in a forward direction, that command will
! 391: act in a backward direction. For example, to kill text back to the
! 392: start of the line, you might type <SAMP>`M-- C-k'</SAMP>.
! 393: </P><P>
! 394:
! 395: The general way to pass numeric arguments to a command is to type meta
! 396: digits before the command. If the first `digit' typed is a minus
! 397: sign (<SAMP>`-'</SAMP>), then the sign of the argument will be negative. Once
! 398: you have typed one meta digit to get the argument started, you can type
! 399: the remainder of the digits, and then the command. For example, to give
! 400: the <KBD>C-d</KBD> command an argument of 10, you could type <SAMP>`M-1 0 C-d'</SAMP>,
! 401: which will delete the next ten characters on the input line.
! 402: </P><P>
! 403:
! 404: <A NAME="Searching"></A>
! 405: <HR SIZE="6">
! 406: <A NAME="SEC8"></A>
! 407: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 408: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC7"> < </A>]</TD>
! 409: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> > </A>]</TD>
! 410: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> << </A>]</TD>
! 411: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> Up </A>]</TD>
! 412: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> >> </A>]</TD>
! 413: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 414: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 415: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 416: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 417: </TR></TABLE>
! 418: <H3> 1.2.5 Searching for Commands in the History </H3>
! 419: <!--docid::SEC8::-->
! 420: <P>
! 421:
! 422: Readline provides commands for searching through the command history
! 423: for lines containing a specified string.
! 424: There are two search modes: <EM>incremental</EM> and <EM>non-incremental</EM>.
! 425: </P><P>
! 426:
! 427: Incremental searches begin before the user has finished typing the
! 428: search string.
! 429: As each character of the search string is typed, Readline displays
! 430: the next entry from the history matching the string typed so far.
! 431: An incremental search requires only as many characters as needed to
! 432: find the desired history entry.
! 433: To search backward in the history for a particular string, type
! 434: <KBD>C-r</KBD>. Typing <KBD>C-s</KBD> searches forward through the history.
! 435: The characters present in the value of the <CODE>isearch-terminators</CODE> variable
! 436: are used to terminate an incremental search.
! 437: If that variable has not been assigned a value, the <KBD>ESC</KBD> and
! 438: <KBD>C-J</KBD> characters will terminate an incremental search.
! 439: <KBD>C-g</KBD> will abort an incremental search and restore the original line.
! 440: When the search is terminated, the history entry containing the
! 441: search string becomes the current line.
! 442: </P><P>
! 443:
! 444: To find other matching entries in the history list, type <KBD>C-r</KBD> or
! 445: <KBD>C-s</KBD> as appropriate.
! 446: This will search backward or forward in the history for the next
! 447: entry matching the search string typed so far.
! 448: Any other key sequence bound to a Readline command will terminate
! 449: the search and execute that command.
! 450: For instance, a <KBD>RET</KBD> will terminate the search and accept
! 451: the line, thereby executing the command from the history list.
! 452: A movement command will terminate the search, make the last line found
! 453: the current line, and begin editing.
! 454: </P><P>
! 455:
! 456: Readline remembers the last incremental search string. If two
! 457: <KBD>C-r</KBD>s are typed without any intervening characters defining a new
! 458: search string, any remembered search string is used.
! 459: </P><P>
! 460:
! 461: Non-incremental searches read the entire search string before starting
! 462: to search for matching history lines. The search string may be
! 463: typed by the user or be part of the contents of the current line.
! 464: </P><P>
! 465:
! 466: <A NAME="Readline Init File"></A>
! 467: <HR SIZE="6">
! 468: <A NAME="SEC9"></A>
! 469: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 470: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC8"> < </A>]</TD>
! 471: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC10"> > </A>]</TD>
! 472: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> << </A>]</TD>
! 473: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> Up </A>]</TD>
! 474: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> >> </A>]</TD>
! 475: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 476: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 477: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 478: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 479: </TR></TABLE>
! 480: <H2> 1.3 Readline Init File </H2>
! 481: <!--docid::SEC9::-->
! 482: <P>
! 483:
! 484: Although the Readline library comes with a set of Emacs-like
! 485: keybindings installed by default, it is possible to use a different set
! 486: of keybindings.
! 487: Any user can customize programs that use Readline by putting
! 488: commands in an <EM>inputrc</EM> file, conventionally in his home directory.
! 489: The name of this
! 490: file is taken from the value of the environment variable <CODE>INPUTRC</CODE>. If
! 491: that variable is unset, the default is <TT>`~/.inputrc'</TT>. If that
! 492: file does not exist or cannot be read, the ultimate default is
! 493: <TT>`/etc/inputrc'</TT>.
! 494: </P><P>
! 495:
! 496: When a program which uses the Readline library starts up, the
! 497: init file is read, and the key bindings are set.
! 498: </P><P>
! 499:
! 500: In addition, the <CODE>C-x C-r</CODE> command re-reads this init file, thus
! 501: incorporating any changes that you might have made to it.
! 502: </P><P>
! 503:
! 504: <BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
! 505: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Syntax for the commands in the inputrc file.</TD></TR>
! 506: </TABLE>
! 507:
! 508: <br>
! 509: <TABLE BORDER=0 CELLSPACING=0>
! 510: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC11">1.3.2 Conditional Init Constructs</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Conditional key bindings in the inputrc file.</TD></TR>
! 511: </TABLE>
! 512:
! 513: <br>
! 514: <TABLE BORDER=0 CELLSPACING=0>
! 515: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC12">1.3.3 Sample Init File</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">An example inputrc file.</TD></TR>
! 516: </TABLE></BLOCKQUOTE>
! 517: <P>
! 518:
! 519: <A NAME="Readline Init File Syntax"></A>
! 520: <HR SIZE="6">
! 521: <A NAME="SEC10"></A>
! 522: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 523: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> < </A>]</TD>
! 524: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC11"> > </A>]</TD>
! 525: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> << </A>]</TD>
! 526: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> Up </A>]</TD>
! 527: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> >> </A>]</TD>
! 528: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 529: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 530: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 531: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 532: </TR></TABLE>
! 533: <H3> 1.3.1 Readline Init File Syntax </H3>
! 534: <!--docid::SEC10::-->
! 535: <P>
! 536:
! 537: There are only a few basic constructs allowed in the
! 538: Readline init file. Blank lines are ignored.
! 539: Lines beginning with a <SAMP>`#'</SAMP> are comments.
! 540: Lines beginning with a <SAMP>`$'</SAMP> indicate conditional
! 541: constructs (see section <A HREF="rluserman.html#SEC11">1.3.2 Conditional Init Constructs</A>). Other lines
! 542: denote variable settings and key bindings.
! 543: </P><P>
! 544:
! 545: <DL COMPACT>
! 546: <DT>Variable Settings
! 547: <DD>You can modify the run-time behavior of Readline by
! 548: altering the values of variables in Readline
! 549: using the <CODE>set</CODE> command within the init file.
! 550: The syntax is simple:
! 551: <P>
! 552:
! 553: <TABLE><tr><td> </td><td class=example><pre>set <VAR>variable</VAR> <VAR>value</VAR>
! 554: </pre></td></tr></table></P><P>
! 555:
! 556: Here, for example, is how to
! 557: change from the default Emacs-like key binding to use
! 558: <CODE>vi</CODE> line editing commands:
! 559: </P><P>
! 560:
! 561: <TABLE><tr><td> </td><td class=example><pre>set editing-mode vi
! 562: </pre></td></tr></table></P><P>
! 563:
! 564: Variable names and values, where appropriate, are recognized without regard
! 565: to case. Unrecognized variable names are ignored.
! 566: </P><P>
! 567:
! 568: Boolean variables (those that can be set to on or off) are set to on if
! 569: the value is null or empty, <VAR>on</VAR> (case-insensitive), or 1. Any other
! 570: value results in the variable being set to off.
! 571: </P><P>
! 572:
! 573: A great deal of run-time behavior is changeable with the following
! 574: variables.
! 575: </P><P>
! 576:
! 577: <A NAME="IDX4"></A>
! 578: <DL COMPACT>
! 579:
! 580: <DT><CODE>bell-style</CODE>
! 581: <DD><A NAME="IDX5"></A>
! 582: Controls what happens when Readline wants to ring the terminal bell.
! 583: If set to <SAMP>`none'</SAMP>, Readline never rings the bell. If set to
! 584: <SAMP>`visible'</SAMP>, Readline uses a visible bell if one is available.
! 585: If set to <SAMP>`audible'</SAMP> (the default), Readline attempts to ring
! 586: the terminal's bell.
! 587: <P>
! 588:
! 589: <DT><CODE>bind-tty-special-chars</CODE>
! 590: <DD><A NAME="IDX6"></A>
! 591: If set to <SAMP>`on'</SAMP>, Readline attempts to bind the control characters
! 592: treated specially by the kernel's terminal driver to their Readline
! 593: equivalents.
! 594: <P>
! 595:
! 596: <DT><CODE>colored-stats</CODE>
! 597: <DD><A NAME="IDX7"></A>
! 598: If set to <SAMP>`on'</SAMP>, Readline displays possible completions using different
! 599: colors to indicate their file type.
! 600: The color definitions are taken from the value of the <CODE>LS_COLORS</CODE>
! 601: environment variable.
! 602: The default is <SAMP>`off'</SAMP>.
! 603: <P>
! 604:
! 605: <DT><CODE>comment-begin</CODE>
! 606: <DD><A NAME="IDX8"></A>
! 607: The string to insert at the beginning of the line when the
! 608: <CODE>insert-comment</CODE> command is executed. The default value
! 609: is <CODE>"#"</CODE>.
! 610: <P>
! 611:
! 612: <DT><CODE>completion-display-width</CODE>
! 613: <DD><A NAME="IDX9"></A>
! 614: The number of screen columns used to display possible matches
! 615: when performing completion.
! 616: The value is ignored if it is less than 0 or greater than the terminal
! 617: screen width.
! 618: A value of 0 will cause matches to be displayed one per line.
! 619: The default value is -1.
! 620: <P>
! 621:
! 622: <DT><CODE>completion-ignore-case</CODE>
! 623: <DD><A NAME="IDX10"></A>
! 624: If set to <SAMP>`on'</SAMP>, Readline performs filename matching and completion
! 625: in a case-insensitive fashion.
! 626: The default value is <SAMP>`off'</SAMP>.
! 627: <P>
! 628:
! 629: <DT><CODE>completion-map-case</CODE>
! 630: <DD><A NAME="IDX11"></A>
! 631: If set to <SAMP>`on'</SAMP>, and <VAR>completion-ignore-case</VAR> is enabled, Readline
! 632: treats hyphens (<SAMP>`-'</SAMP>) and underscores (<SAMP>`_'</SAMP>) as equivalent when
! 633: performing case-insensitive filename matching and completion.
! 634: <P>
! 635:
! 636: <DT><CODE>completion-prefix-display-length</CODE>
! 637: <DD><A NAME="IDX12"></A>
! 638: The length in characters of the common prefix of a list of possible
! 639: completions that is displayed without modification. When set to a
! 640: value greater than zero, common prefixes longer than this value are
! 641: replaced with an ellipsis when displaying possible completions.
! 642: <P>
! 643:
! 644: <DT><CODE>completion-query-items</CODE>
! 645: <DD><A NAME="IDX13"></A>
! 646: The number of possible completions that determines when the user is
! 647: asked whether the list of possibilities should be displayed.
! 648: If the number of possible completions is greater than this value,
! 649: Readline will ask the user whether or not he wishes to view
! 650: them; otherwise, they are simply listed.
! 651: This variable must be set to an integer value greater than or equal to 0.
! 652: A negative value means Readline should never ask.
! 653: The default limit is <CODE>100</CODE>.
! 654: <P>
! 655:
! 656: <DT><CODE>convert-meta</CODE>
! 657: <DD><A NAME="IDX14"></A>
! 658: If set to <SAMP>`on'</SAMP>, Readline will convert characters with the
! 659: eighth bit set to an ASCII key sequence by stripping the eighth
! 660: bit and prefixing an <KBD>ESC</KBD> character, converting them to a
! 661: meta-prefixed key sequence. The default value is <SAMP>`on'</SAMP>.
! 662: <P>
! 663:
! 664: <DT><CODE>disable-completion</CODE>
! 665: <DD><A NAME="IDX15"></A>
! 666: If set to <SAMP>`On'</SAMP>, Readline will inhibit word completion.
! 667: Completion characters will be inserted into the line as if they had
! 668: been mapped to <CODE>self-insert</CODE>. The default is <SAMP>`off'</SAMP>.
! 669: <P>
! 670:
! 671: <DT><CODE>editing-mode</CODE>
! 672: <DD><A NAME="IDX16"></A>
! 673: The <CODE>editing-mode</CODE> variable controls which default set of
! 674: key bindings is used. By default, Readline starts up in Emacs editing
! 675: mode, where the keystrokes are most similar to Emacs. This variable can be
! 676: set to either <SAMP>`emacs'</SAMP> or <SAMP>`vi'</SAMP>.
! 677: <P>
! 678:
! 679: <DT><CODE>echo-control-characters</CODE>
! 680: <DD>When set to <SAMP>`on'</SAMP>, on operating systems that indicate they support it,
! 681: readline echoes a character corresponding to a signal generated from the
! 682: keyboard. The default is <SAMP>`on'</SAMP>.
! 683: <P>
! 684:
! 685: <DT><CODE>enable-keypad</CODE>
! 686: <DD><A NAME="IDX17"></A>
! 687: When set to <SAMP>`on'</SAMP>, Readline will try to enable the application
! 688: keypad when it is called. Some systems need this to enable the
! 689: arrow keys. The default is <SAMP>`off'</SAMP>.
! 690: <P>
! 691:
! 692: <DT><CODE>enable-meta-key</CODE>
! 693: <DD>When set to <SAMP>`on'</SAMP>, Readline will try to enable any meta modifier
! 694: key the terminal claims to support when it is called. On many terminals,
! 695: the meta key is used to send eight-bit characters.
! 696: The default is <SAMP>`on'</SAMP>.
! 697: <P>
! 698:
! 699: <DT><CODE>expand-tilde</CODE>
! 700: <DD><A NAME="IDX18"></A>
! 701: If set to <SAMP>`on'</SAMP>, tilde expansion is performed when Readline
! 702: attempts word completion. The default is <SAMP>`off'</SAMP>.
! 703: <P>
! 704:
! 705: <DT><CODE>history-preserve-point</CODE>
! 706: <DD><A NAME="IDX19"></A>
! 707: If set to <SAMP>`on'</SAMP>, the history code attempts to place the point (the
! 708: current cursor position) at the
! 709: same location on each history line retrieved with <CODE>previous-history</CODE>
! 710: or <CODE>next-history</CODE>. The default is <SAMP>`off'</SAMP>.
! 711: <P>
! 712:
! 713: <DT><CODE>history-size</CODE>
! 714: <DD><A NAME="IDX20"></A>
! 715: Set the maximum number of history entries saved in the history list.
! 716: If set to zero, any existing history entries are deleted and no new entries
! 717: are saved.
! 718: If set to a value less than zero, the number of history entries is not
! 719: limited.
! 720: By default, the number of history entries is not limited.
! 721: <P>
! 722:
! 723: <DT><CODE>horizontal-scroll-mode</CODE>
! 724: <DD><A NAME="IDX21"></A>
! 725: This variable can be set to either <SAMP>`on'</SAMP> or <SAMP>`off'</SAMP>. Setting it
! 726: to <SAMP>`on'</SAMP> means that the text of the lines being edited will scroll
! 727: horizontally on a single screen line when they are longer than the width
! 728: of the screen, instead of wrapping onto a new screen line. By default,
! 729: this variable is set to <SAMP>`off'</SAMP>.
! 730: <P>
! 731:
! 732: <DT><CODE>input-meta</CODE>
! 733: <DD><A NAME="IDX22"></A>
! 734: <A NAME="IDX23"></A>
! 735: If set to <SAMP>`on'</SAMP>, Readline will enable eight-bit input (it
! 736: will not clear the eighth bit in the characters it reads),
! 737: regardless of what the terminal claims it can support. The
! 738: default value is <SAMP>`off'</SAMP>. The name <CODE>meta-flag</CODE> is a
! 739: synonym for this variable.
! 740: <P>
! 741:
! 742: <DT><CODE>isearch-terminators</CODE>
! 743: <DD><A NAME="IDX24"></A>
! 744: The string of characters that should terminate an incremental search without
! 745: subsequently executing the character as a command (see section <A HREF="rluserman.html#SEC8">1.2.5 Searching for Commands in the History</A>).
! 746: If this variable has not been given a value, the characters <KBD>ESC</KBD> and
! 747: <KBD>C-J</KBD> will terminate an incremental search.
! 748: <P>
! 749:
! 750: <DT><CODE>keymap</CODE>
! 751: <DD><A NAME="IDX25"></A>
! 752: Sets Readline's idea of the current keymap for key binding commands.
! 753: Acceptable <CODE>keymap</CODE> names are
! 754: <CODE>emacs</CODE>,
! 755: <CODE>emacs-standard</CODE>,
! 756: <CODE>emacs-meta</CODE>,
! 757: <CODE>emacs-ctlx</CODE>,
! 758: <CODE>vi</CODE>,
! 759: <CODE>vi-move</CODE>,
! 760: <CODE>vi-command</CODE>, and
! 761: <CODE>vi-insert</CODE>.
! 762: <CODE>vi</CODE> is equivalent to <CODE>vi-command</CODE>; <CODE>emacs</CODE> is
! 763: equivalent to <CODE>emacs-standard</CODE>. The default value is <CODE>emacs</CODE>.
! 764: The value of the <CODE>editing-mode</CODE> variable also affects the
! 765: default keymap.
! 766: <P>
! 767:
! 768: <DT><CODE>keyseq-timeout</CODE>
! 769: <DD>Specifies the duration Readline will wait for a character when reading an
! 770: ambiguous key sequence (one that can form a complete key sequence using
! 771: the input read so far, or can take additional input to complete a longer
! 772: key sequence).
! 773: If no input is received within the timeout, Readline will use the shorter
! 774: but complete key sequence.
! 775: Readline uses this value to determine whether or not input is
! 776: available on the current input source (<CODE>rl_instream</CODE> by default).
! 777: The value is specified in milliseconds, so a value of 1000 means that
! 778: Readline will wait one second for additional input.
! 779: If this variable is set to a value less than or equal to zero, or to a
! 780: non-numeric value, Readline will wait until another key is pressed to
! 781: decide which key sequence to complete.
! 782: The default value is <CODE>500</CODE>.
! 783: <P>
! 784:
! 785: <DT><CODE>mark-directories</CODE>
! 786: <DD>If set to <SAMP>`on'</SAMP>, completed directory names have a slash
! 787: appended. The default is <SAMP>`on'</SAMP>.
! 788: <P>
! 789:
! 790: <DT><CODE>mark-modified-lines</CODE>
! 791: <DD><A NAME="IDX26"></A>
! 792: This variable, when set to <SAMP>`on'</SAMP>, causes Readline to display an
! 793: asterisk (<SAMP>`*'</SAMP>) at the start of history lines which have been modified.
! 794: This variable is <SAMP>`off'</SAMP> by default.
! 795: <P>
! 796:
! 797: <DT><CODE>mark-symlinked-directories</CODE>
! 798: <DD><A NAME="IDX27"></A>
! 799: If set to <SAMP>`on'</SAMP>, completed names which are symbolic links
! 800: to directories have a slash appended (subject to the value of
! 801: <CODE>mark-directories</CODE>).
! 802: The default is <SAMP>`off'</SAMP>.
! 803: <P>
! 804:
! 805: <DT><CODE>match-hidden-files</CODE>
! 806: <DD><A NAME="IDX28"></A>
! 807: This variable, when set to <SAMP>`on'</SAMP>, causes Readline to match files whose
! 808: names begin with a <SAMP>`.'</SAMP> (hidden files) when performing filename
! 809: completion.
! 810: If set to <SAMP>`off'</SAMP>, the leading <SAMP>`.'</SAMP> must be
! 811: supplied by the user in the filename to be completed.
! 812: This variable is <SAMP>`on'</SAMP> by default.
! 813: <P>
! 814:
! 815: <DT><CODE>menu-complete-display-prefix</CODE>
! 816: <DD><A NAME="IDX29"></A>
! 817: If set to <SAMP>`on'</SAMP>, menu completion displays the common prefix of the
! 818: list of possible completions (which may be empty) before cycling through
! 819: the list. The default is <SAMP>`off'</SAMP>.
! 820: <P>
! 821:
! 822: <DT><CODE>output-meta</CODE>
! 823: <DD><A NAME="IDX30"></A>
! 824: If set to <SAMP>`on'</SAMP>, Readline will display characters with the
! 825: eighth bit set directly rather than as a meta-prefixed escape
! 826: sequence. The default is <SAMP>`off'</SAMP>.
! 827: <P>
! 828:
! 829: <DT><CODE>page-completions</CODE>
! 830: <DD><A NAME="IDX31"></A>
! 831: If set to <SAMP>`on'</SAMP>, Readline uses an internal <CODE>more</CODE>-like pager
! 832: to display a screenful of possible completions at a time.
! 833: This variable is <SAMP>`on'</SAMP> by default.
! 834: <P>
! 835:
! 836: <DT><CODE>print-completions-horizontally</CODE>
! 837: <DD>If set to <SAMP>`on'</SAMP>, Readline will display completions with matches
! 838: sorted horizontally in alphabetical order, rather than down the screen.
! 839: The default is <SAMP>`off'</SAMP>.
! 840: <P>
! 841:
! 842: <DT><CODE>revert-all-at-newline</CODE>
! 843: <DD><A NAME="IDX32"></A>
! 844: If set to <SAMP>`on'</SAMP>, Readline will undo all changes to history lines
! 845: before returning when <CODE>accept-line</CODE> is executed. By default,
! 846: history lines may be modified and retain individual undo lists across
! 847: calls to <CODE>readline</CODE>. The default is <SAMP>`off'</SAMP>.
! 848: <P>
! 849:
! 850: <DT><CODE>show-all-if-ambiguous</CODE>
! 851: <DD><A NAME="IDX33"></A>
! 852: This alters the default behavior of the completion functions. If
! 853: set to <SAMP>`on'</SAMP>,
! 854: words which have more than one possible completion cause the
! 855: matches to be listed immediately instead of ringing the bell.
! 856: The default value is <SAMP>`off'</SAMP>.
! 857: <P>
! 858:
! 859: <DT><CODE>show-all-if-unmodified</CODE>
! 860: <DD><A NAME="IDX34"></A>
! 861: This alters the default behavior of the completion functions in
! 862: a fashion similar to <VAR>show-all-if-ambiguous</VAR>.
! 863: If set to <SAMP>`on'</SAMP>,
! 864: words which have more than one possible completion without any
! 865: possible partial completion (the possible completions don't share
! 866: a common prefix) cause the matches to be listed immediately instead
! 867: of ringing the bell.
! 868: The default value is <SAMP>`off'</SAMP>.
! 869: <P>
! 870:
! 871: <DT><CODE>show-mode-in-prompt</CODE>
! 872: <DD><A NAME="IDX35"></A>
! 873: If set to <SAMP>`on'</SAMP>, add a character to the beginning of the prompt
! 874: indicating the editing mode: emacs (<SAMP>`@'</SAMP>), vi command (<SAMP>`:'</SAMP>),
! 875: or vi insertion (<SAMP>`+'</SAMP>).
! 876: The default value is <SAMP>`off'</SAMP>.
! 877: <P>
! 878:
! 879: <DT><CODE>skip-completed-text</CODE>
! 880: <DD><A NAME="IDX36"></A>
! 881: If set to <SAMP>`on'</SAMP>, this alters the default completion behavior when
! 882: inserting a single match into the line. It's only active when
! 883: performing completion in the middle of a word. If enabled, readline
! 884: does not insert characters from the completion that match characters
! 885: after point in the word being completed, so portions of the word
! 886: following the cursor are not duplicated.
! 887: For instance, if this is enabled, attempting completion when the cursor
! 888: is after the <SAMP>`e'</SAMP> in <SAMP>`Makefile'</SAMP> will result in <SAMP>`Makefile'</SAMP>
! 889: rather than <SAMP>`Makefilefile'</SAMP>, assuming there is a single possible
! 890: completion.
! 891: The default value is <SAMP>`off'</SAMP>.
! 892: <P>
! 893:
! 894: <DT><CODE>visible-stats</CODE>
! 895: <DD><A NAME="IDX37"></A>
! 896: If set to <SAMP>`on'</SAMP>, a character denoting a file's type
! 897: is appended to the filename when listing possible
! 898: completions. The default is <SAMP>`off'</SAMP>.
! 899: <P>
! 900:
! 901: </DL>
! 902: <P>
! 903:
! 904: <DT>Key Bindings
! 905: <DD>The syntax for controlling key bindings in the init file is
! 906: simple. First you need to find the name of the command that you
! 907: want to change. The following sections contain tables of the command
! 908: name, the default keybinding, if any, and a short description of what
! 909: the command does.
! 910: <P>
! 911:
! 912: Once you know the name of the command, simply place on a line
! 913: in the init file the name of the key
! 914: you wish to bind the command to, a colon, and then the name of the
! 915: command.
! 916: There can be no space between the key name and the colon -- that will be
! 917: interpreted as part of the key name.
! 918: The name of the key can be expressed in different ways, depending on
! 919: what you find most comfortable.
! 920: </P><P>
! 921:
! 922: In addition to command names, readline allows keys to be bound
! 923: to a string that is inserted when the key is pressed (a <VAR>macro</VAR>).
! 924: </P><P>
! 925:
! 926: <DL COMPACT>
! 927: <DT><VAR>keyname</VAR>: <VAR>function-name</VAR> or <VAR>macro</VAR>
! 928: <DD><VAR>keyname</VAR> is the name of a key spelled out in English. For example:
! 929: <TABLE><tr><td> </td><td class=example><pre>Control-u: universal-argument
! 930: Meta-Rubout: backward-kill-word
! 931: Control-o: "> output"
! 932: </pre></td></tr></table><P>
! 933:
! 934: In the above example, <KBD>C-u</KBD> is bound to the function
! 935: <CODE>universal-argument</CODE>,
! 936: <KBD>M-DEL</KBD> is bound to the function <CODE>backward-kill-word</CODE>, and
! 937: <KBD>C-o</KBD> is bound to run the macro
! 938: expressed on the right hand side (that is, to insert the text
! 939: <SAMP>`> output'</SAMP> into the line).
! 940: </P><P>
! 941:
! 942: A number of symbolic character names are recognized while
! 943: processing this key binding syntax:
! 944: <VAR>DEL</VAR>,
! 945: <VAR>ESC</VAR>,
! 946: <VAR>ESCAPE</VAR>,
! 947: <VAR>LFD</VAR>,
! 948: <VAR>NEWLINE</VAR>,
! 949: <VAR>RET</VAR>,
! 950: <VAR>RETURN</VAR>,
! 951: <VAR>RUBOUT</VAR>,
! 952: <VAR>SPACE</VAR>,
! 953: <VAR>SPC</VAR>,
! 954: and
! 955: <VAR>TAB</VAR>.
! 956: </P><P>
! 957:
! 958: <DT>"<VAR>keyseq</VAR>": <VAR>function-name</VAR> or <VAR>macro</VAR>
! 959: <DD><VAR>keyseq</VAR> differs from <VAR>keyname</VAR> above in that strings
! 960: denoting an entire key sequence can be specified, by placing
! 961: the key sequence in double quotes. Some GNU Emacs style key
! 962: escapes can be used, as in the following example, but the
! 963: special character names are not recognized.
! 964: <P>
! 965:
! 966: <TABLE><tr><td> </td><td class=example><pre>"\C-u": universal-argument
! 967: "\C-x\C-r": re-read-init-file
! 968: "\e[11~": "Function Key 1"
! 969: </pre></td></tr></table></P><P>
! 970:
! 971: In the above example, <KBD>C-u</KBD> is again bound to the function
! 972: <CODE>universal-argument</CODE> (just as it was in the first example),
! 973: <SAMP>`<KBD>C-x</KBD> <KBD>C-r</KBD>'</SAMP> is bound to the function <CODE>re-read-init-file</CODE>,
! 974: and <SAMP>`<KBD>ESC</KBD> <KBD>[</KBD> <KBD>1</KBD> <KBD>1</KBD> <KBD>~</KBD>'</SAMP> is bound to insert
! 975: the text <SAMP>`Function Key 1'</SAMP>.
! 976: </P><P>
! 977:
! 978: </DL>
! 979: <P>
! 980:
! 981: The following GNU Emacs style escape sequences are available when
! 982: specifying key sequences:
! 983: </P><P>
! 984:
! 985: <DL COMPACT>
! 986: <DT><CODE><KBD>\C-</KBD></CODE>
! 987: <DD>control prefix
! 988: <DT><CODE><KBD>\M-</KBD></CODE>
! 989: <DD>meta prefix
! 990: <DT><CODE><KBD>\e</KBD></CODE>
! 991: <DD>an escape character
! 992: <DT><CODE><KBD>\\</KBD></CODE>
! 993: <DD>backslash
! 994: <DT><CODE><KBD>\"</KBD></CODE>
! 995: <DD><KBD>"</KBD>, a double quotation mark
! 996: <DT><CODE><KBD>\'</KBD></CODE>
! 997: <DD><KBD>'</KBD>, a single quote or apostrophe
! 998: </DL>
! 999: <P>
! 1000:
! 1001: In addition to the GNU Emacs style escape sequences, a second
! 1002: set of backslash escapes is available:
! 1003: </P><P>
! 1004:
! 1005: <DL COMPACT>
! 1006: <DT><CODE>\a</CODE>
! 1007: <DD>alert (bell)
! 1008: <DT><CODE>\b</CODE>
! 1009: <DD>backspace
! 1010: <DT><CODE>\d</CODE>
! 1011: <DD>delete
! 1012: <DT><CODE>\f</CODE>
! 1013: <DD>form feed
! 1014: <DT><CODE>\n</CODE>
! 1015: <DD>newline
! 1016: <DT><CODE>\r</CODE>
! 1017: <DD>carriage return
! 1018: <DT><CODE>\t</CODE>
! 1019: <DD>horizontal tab
! 1020: <DT><CODE>\v</CODE>
! 1021: <DD>vertical tab
! 1022: <DT><CODE>\<VAR>nnn</VAR></CODE>
! 1023: <DD>the eight-bit character whose value is the octal value <VAR>nnn</VAR>
! 1024: (one to three digits)
! 1025: <DT><CODE>\x<VAR>HH</VAR></CODE>
! 1026: <DD>the eight-bit character whose value is the hexadecimal value <VAR>HH</VAR>
! 1027: (one or two hex digits)
! 1028: </DL>
! 1029: <P>
! 1030:
! 1031: When entering the text of a macro, single or double quotes must
! 1032: be used to indicate a macro definition.
! 1033: Unquoted text is assumed to be a function name.
! 1034: In the macro body, the backslash escapes described above are expanded.
! 1035: Backslash will quote any other character in the macro text,
! 1036: including <SAMP>`"'</SAMP> and <SAMP>`''</SAMP>.
! 1037: For example, the following binding will make <SAMP>`<KBD>C-x</KBD> \'</SAMP>
! 1038: insert a single <SAMP>`\'</SAMP> into the line:
! 1039: <TABLE><tr><td> </td><td class=example><pre>"\C-x\\": "\\"
! 1040: </pre></td></tr></table></P><P>
! 1041:
! 1042: </DL>
! 1043: <P>
! 1044:
! 1045: <A NAME="Conditional Init Constructs"></A>
! 1046: <HR SIZE="6">
! 1047: <A NAME="SEC11"></A>
! 1048: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 1049: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC10"> < </A>]</TD>
! 1050: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC12"> > </A>]</TD>
! 1051: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC12"> << </A>]</TD>
! 1052: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> Up </A>]</TD>
! 1053: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> >> </A>]</TD>
! 1054: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 1055: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 1056: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 1057: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 1058: </TR></TABLE>
! 1059: <H3> 1.3.2 Conditional Init Constructs </H3>
! 1060: <!--docid::SEC11::-->
! 1061: <P>
! 1062:
! 1063: Readline implements a facility similar in spirit to the conditional
! 1064: compilation features of the C preprocessor which allows key
! 1065: bindings and variable settings to be performed as the result
! 1066: of tests. There are four parser directives used.
! 1067: </P><P>
! 1068:
! 1069: <DL COMPACT>
! 1070: <DT><CODE>$if</CODE>
! 1071: <DD>The <CODE>$if</CODE> construct allows bindings to be made based on the
! 1072: editing mode, the terminal being used, or the application using
! 1073: Readline. The text of the test extends to the end of the line;
! 1074: no characters are required to isolate it.
! 1075: <P>
! 1076:
! 1077: <DL COMPACT>
! 1078: <DT><CODE>mode</CODE>
! 1079: <DD>The <CODE>mode=</CODE> form of the <CODE>$if</CODE> directive is used to test
! 1080: whether Readline is in <CODE>emacs</CODE> or <CODE>vi</CODE> mode.
! 1081: This may be used in conjunction
! 1082: with the <SAMP>`set keymap'</SAMP> command, for instance, to set bindings in
! 1083: the <CODE>emacs-standard</CODE> and <CODE>emacs-ctlx</CODE> keymaps only if
! 1084: Readline is starting out in <CODE>emacs</CODE> mode.
! 1085: <P>
! 1086:
! 1087: <DT><CODE>term</CODE>
! 1088: <DD>The <CODE>term=</CODE> form may be used to include terminal-specific
! 1089: key bindings, perhaps to bind the key sequences output by the
! 1090: terminal's function keys. The word on the right side of the
! 1091: <SAMP>`='</SAMP> is tested against both the full name of the terminal and
! 1092: the portion of the terminal name before the first <SAMP>`-'</SAMP>. This
! 1093: allows <CODE>sun</CODE> to match both <CODE>sun</CODE> and <CODE>sun-cmd</CODE>,
! 1094: for instance.
! 1095: <P>
! 1096:
! 1097: <DT><CODE>application</CODE>
! 1098: <DD>The <VAR>application</VAR> construct is used to include
! 1099: application-specific settings. Each program using the Readline
! 1100: library sets the <VAR>application name</VAR>, and you can test for
! 1101: a particular value.
! 1102: This could be used to bind key sequences to functions useful for
! 1103: a specific program. For instance, the following command adds a
! 1104: key sequence that quotes the current or previous word in Bash:
! 1105: <TABLE><tr><td> </td><td class=example><pre>$if Bash
! 1106: # Quote the current or previous word
! 1107: "\C-xq": "\eb\"\ef\""
! 1108: $endif
! 1109: </pre></td></tr></table></DL>
! 1110: <P>
! 1111:
! 1112: <DT><CODE>$endif</CODE>
! 1113: <DD>This command, as seen in the previous example, terminates an
! 1114: <CODE>$if</CODE> command.
! 1115: <P>
! 1116:
! 1117: <DT><CODE>$else</CODE>
! 1118: <DD>Commands in this branch of the <CODE>$if</CODE> directive are executed if
! 1119: the test fails.
! 1120: <P>
! 1121:
! 1122: <DT><CODE>$include</CODE>
! 1123: <DD>This directive takes a single filename as an argument and reads commands
! 1124: and bindings from that file.
! 1125: For example, the following directive reads from <TT>`/etc/inputrc'</TT>:
! 1126: <TABLE><tr><td> </td><td class=example><pre>$include /etc/inputrc
! 1127: </pre></td></tr></table></DL>
! 1128: <P>
! 1129:
! 1130: <A NAME="Sample Init File"></A>
! 1131: <HR SIZE="6">
! 1132: <A NAME="SEC12"></A>
! 1133: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 1134: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC11"> < </A>]</TD>
! 1135: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> > </A>]</TD>
! 1136: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> << </A>]</TD>
! 1137: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> Up </A>]</TD>
! 1138: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> >> </A>]</TD>
! 1139: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 1140: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 1141: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 1142: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 1143: </TR></TABLE>
! 1144: <H3> 1.3.3 Sample Init File </H3>
! 1145: <!--docid::SEC12::-->
! 1146: <P>
! 1147:
! 1148: Here is an example of an <VAR>inputrc</VAR> file. This illustrates key
! 1149: binding, variable assignment, and conditional syntax.
! 1150: </P><P>
! 1151:
! 1152: <TABLE><tr><td> </td><td class=example><pre># This file controls the behaviour of line input editing for
! 1153: # programs that use the GNU Readline library. Existing
! 1154: # programs include FTP, Bash, and GDB.
! 1155: #
! 1156: # You can re-read the inputrc file with C-x C-r.
! 1157: # Lines beginning with '#' are comments.
! 1158: #
! 1159: # First, include any system-wide bindings and variable
! 1160: # assignments from /etc/Inputrc
! 1161: $include /etc/Inputrc
! 1162:
! 1163: #
! 1164: # Set various bindings for emacs mode.
! 1165:
! 1166: set editing-mode emacs
! 1167:
! 1168: $if mode=emacs
! 1169:
! 1170: Meta-Control-h: backward-kill-word Text after the function name is ignored
! 1171:
! 1172: #
! 1173: # Arrow keys in keypad mode
! 1174: #
! 1175: #"\M-OD": backward-char
! 1176: #"\M-OC": forward-char
! 1177: #"\M-OA": previous-history
! 1178: #"\M-OB": next-history
! 1179: #
! 1180: # Arrow keys in ANSI mode
! 1181: #
! 1182: "\M-[D": backward-char
! 1183: "\M-[C": forward-char
! 1184: "\M-[A": previous-history
! 1185: "\M-[B": next-history
! 1186: #
! 1187: # Arrow keys in 8 bit keypad mode
! 1188: #
! 1189: #"\M-\C-OD": backward-char
! 1190: #"\M-\C-OC": forward-char
! 1191: #"\M-\C-OA": previous-history
! 1192: #"\M-\C-OB": next-history
! 1193: #
! 1194: # Arrow keys in 8 bit ANSI mode
! 1195: #
! 1196: #"\M-\C-[D": backward-char
! 1197: #"\M-\C-[C": forward-char
! 1198: #"\M-\C-[A": previous-history
! 1199: #"\M-\C-[B": next-history
! 1200:
! 1201: C-q: quoted-insert
! 1202:
! 1203: $endif
! 1204:
! 1205: # An old-style binding. This happens to be the default.
! 1206: TAB: complete
! 1207:
! 1208: # Macros that are convenient for shell interaction
! 1209: $if Bash
! 1210: # edit the path
! 1211: "\C-xp": "PATH=${PATH}\e\C-e\C-a\ef\C-f"
! 1212: # prepare to type a quoted word --
! 1213: # insert open and close double quotes
! 1214: # and move to just after the open quote
! 1215: "\C-x\"": "\"\"\C-b"
! 1216: # insert a backslash (testing backslash escapes
! 1217: # in sequences and macros)
! 1218: "\C-x\\": "\\"
! 1219: # Quote the current or previous word
! 1220: "\C-xq": "\eb\"\ef\""
! 1221: # Add a binding to refresh the line, which is unbound
! 1222: "\C-xr": redraw-current-line
! 1223: # Edit variable on current line.
! 1224: "\M-\C-v": "\C-a\C-k$\C-y\M-\C-e\C-a\C-y="
! 1225: $endif
! 1226:
! 1227: # use a visible bell if one is available
! 1228: set bell-style visible
! 1229:
! 1230: # don't strip characters to 7 bits when reading
! 1231: set input-meta on
! 1232:
! 1233: # allow iso-latin1 characters to be inserted rather
! 1234: # than converted to prefix-meta sequences
! 1235: set convert-meta off
! 1236:
! 1237: # display characters with the eighth bit set directly
! 1238: # rather than as meta-prefixed characters
! 1239: set output-meta on
! 1240:
! 1241: # if there are more than 150 possible completions for
! 1242: # a word, ask the user if he wants to see all of them
! 1243: set completion-query-items 150
! 1244:
! 1245: # For FTP
! 1246: $if Ftp
! 1247: "\C-xg": "get \M-?"
! 1248: "\C-xt": "put \M-?"
! 1249: "\M-.": yank-last-arg
! 1250: $endif
! 1251: </pre></td></tr></table></P><P>
! 1252:
! 1253: <A NAME="Bindable Readline Commands"></A>
! 1254: <HR SIZE="6">
! 1255: <A NAME="SEC13"></A>
! 1256: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 1257: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC12"> < </A>]</TD>
! 1258: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC14"> > </A>]</TD>
! 1259: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> << </A>]</TD>
! 1260: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> Up </A>]</TD>
! 1261: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> >> </A>]</TD>
! 1262: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 1263: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 1264: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 1265: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 1266: </TR></TABLE>
! 1267: <H2> 1.4 Bindable Readline Commands </H2>
! 1268: <!--docid::SEC13::-->
! 1269: <P>
! 1270:
! 1271: <BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
! 1272: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC14">1.4.1 Commands For Moving</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Moving about the line.</TD></TR>
! 1273: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Getting at previous lines.</TD></TR>
! 1274: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC16">1.4.3 Commands For Changing Text</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Commands for changing text.</TD></TR>
! 1275: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC17">1.4.4 Killing And Yanking</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Commands for killing and yanking.</TD></TR>
! 1276: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Specifying numeric arguments, repeat counts.</TD></TR>
! 1277: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC19">1.4.6 Letting Readline Type For You</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Getting Readline to do the typing for you.</TD></TR>
! 1278: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC20">1.4.7 Keyboard Macros</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Saving and re-executing typed characters</TD></TR>
! 1279: <TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Other miscellaneous commands.</TD></TR>
! 1280: </TABLE></BLOCKQUOTE>
! 1281: <P>
! 1282:
! 1283: This section describes Readline commands that may be bound to key
! 1284: sequences.
! 1285: Command names without an accompanying key sequence are unbound by default.
! 1286: </P><P>
! 1287:
! 1288: In the following descriptions, <EM>point</EM> refers to the current cursor
! 1289: position, and <EM>mark</EM> refers to a cursor position saved by the
! 1290: <CODE>set-mark</CODE> command.
! 1291: The text between the point and mark is referred to as the <EM>region</EM>.
! 1292: </P><P>
! 1293:
! 1294: <A NAME="Commands For Moving"></A>
! 1295: <HR SIZE="6">
! 1296: <A NAME="SEC14"></A>
! 1297: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 1298: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> < </A>]</TD>
! 1299: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC15"> > </A>]</TD>
! 1300: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> << </A>]</TD>
! 1301: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
! 1302: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> >> </A>]</TD>
! 1303: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 1304: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 1305: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 1306: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 1307: </TR></TABLE>
! 1308: <H3> 1.4.1 Commands For Moving </H3>
! 1309: <!--docid::SEC14::-->
! 1310: <DL COMPACT>
! 1311: <A NAME="IDX38"></A>
! 1312: <DT><CODE>beginning-of-line (C-a)</CODE>
! 1313: <DD><A NAME="IDX39"></A>
! 1314: Move to the start of the current line.
! 1315: <P>
! 1316:
! 1317: <A NAME="IDX40"></A>
! 1318: <DT><CODE>end-of-line (C-e)</CODE>
! 1319: <DD><A NAME="IDX41"></A>
! 1320: Move to the end of the line.
! 1321: <P>
! 1322:
! 1323: <A NAME="IDX42"></A>
! 1324: <DT><CODE>forward-char (C-f)</CODE>
! 1325: <DD><A NAME="IDX43"></A>
! 1326: Move forward a character.
! 1327: <P>
! 1328:
! 1329: <A NAME="IDX44"></A>
! 1330: <DT><CODE>backward-char (C-b)</CODE>
! 1331: <DD><A NAME="IDX45"></A>
! 1332: Move back a character.
! 1333: <P>
! 1334:
! 1335: <A NAME="IDX46"></A>
! 1336: <DT><CODE>forward-word (M-f)</CODE>
! 1337: <DD><A NAME="IDX47"></A>
! 1338: Move forward to the end of the next word.
! 1339: Words are composed of letters and digits.
! 1340: <P>
! 1341:
! 1342: <A NAME="IDX48"></A>
! 1343: <DT><CODE>backward-word (M-b)</CODE>
! 1344: <DD><A NAME="IDX49"></A>
! 1345: Move back to the start of the current or previous word.
! 1346: Words are composed of letters and digits.
! 1347: <P>
! 1348:
! 1349: <A NAME="IDX50"></A>
! 1350: <DT><CODE>clear-screen (C-l)</CODE>
! 1351: <DD><A NAME="IDX51"></A>
! 1352: Clear the screen and redraw the current line,
! 1353: leaving the current line at the top of the screen.
! 1354: <P>
! 1355:
! 1356: <A NAME="IDX52"></A>
! 1357: <DT><CODE>redraw-current-line ()</CODE>
! 1358: <DD><A NAME="IDX53"></A>
! 1359: Refresh the current line. By default, this is unbound.
! 1360: <P>
! 1361:
! 1362: </DL>
! 1363: <P>
! 1364:
! 1365: <A NAME="Commands For History"></A>
! 1366: <HR SIZE="6">
! 1367: <A NAME="SEC15"></A>
! 1368: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 1369: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC14"> < </A>]</TD>
! 1370: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC16"> > </A>]</TD>
! 1371: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC16"> << </A>]</TD>
! 1372: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
! 1373: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> >> </A>]</TD>
! 1374: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 1375: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 1376: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 1377: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 1378: </TR></TABLE>
! 1379: <H3> 1.4.2 Commands For Manipulating The History </H3>
! 1380: <!--docid::SEC15::-->
! 1381: <P>
! 1382:
! 1383: <DL COMPACT>
! 1384: <A NAME="IDX54"></A>
! 1385: <DT><CODE>accept-line (Newline or Return)</CODE>
! 1386: <DD><A NAME="IDX55"></A>
! 1387: Accept the line regardless of where the cursor is.
! 1388: If this line is
! 1389: non-empty, it may be added to the history list for future recall with
! 1390: <CODE>add_history()</CODE>.
! 1391: If this line is a modified history line, the history line is restored
! 1392: to its original state.
! 1393: <P>
! 1394:
! 1395: <A NAME="IDX56"></A>
! 1396: <DT><CODE>previous-history (C-p)</CODE>
! 1397: <DD><A NAME="IDX57"></A>
! 1398: Move `back' through the history list, fetching the previous command.
! 1399: <P>
! 1400:
! 1401: <A NAME="IDX58"></A>
! 1402: <DT><CODE>next-history (C-n)</CODE>
! 1403: <DD><A NAME="IDX59"></A>
! 1404: Move `forward' through the history list, fetching the next command.
! 1405: <P>
! 1406:
! 1407: <A NAME="IDX60"></A>
! 1408: <DT><CODE>beginning-of-history (M-<)</CODE>
! 1409: <DD><A NAME="IDX61"></A>
! 1410: Move to the first line in the history.
! 1411: <P>
! 1412:
! 1413: <A NAME="IDX62"></A>
! 1414: <DT><CODE>end-of-history (M->)</CODE>
! 1415: <DD><A NAME="IDX63"></A>
! 1416: Move to the end of the input history, i.e., the line currently
! 1417: being entered.
! 1418: <P>
! 1419:
! 1420: <A NAME="IDX64"></A>
! 1421: <DT><CODE>reverse-search-history (C-r)</CODE>
! 1422: <DD><A NAME="IDX65"></A>
! 1423: Search backward starting at the current line and moving `up' through
! 1424: the history as necessary. This is an incremental search.
! 1425: <P>
! 1426:
! 1427: <A NAME="IDX66"></A>
! 1428: <DT><CODE>forward-search-history (C-s)</CODE>
! 1429: <DD><A NAME="IDX67"></A>
! 1430: Search forward starting at the current line and moving `down' through
! 1431: the the history as necessary. This is an incremental search.
! 1432: <P>
! 1433:
! 1434: <A NAME="IDX68"></A>
! 1435: <DT><CODE>non-incremental-reverse-search-history (M-p)</CODE>
! 1436: <DD><A NAME="IDX69"></A>
! 1437: Search backward starting at the current line and moving `up'
! 1438: through the history as necessary using a non-incremental search
! 1439: for a string supplied by the user.
! 1440: <P>
! 1441:
! 1442: <A NAME="IDX70"></A>
! 1443: <DT><CODE>non-incremental-forward-search-history (M-n)</CODE>
! 1444: <DD><A NAME="IDX71"></A>
! 1445: Search forward starting at the current line and moving `down'
! 1446: through the the history as necessary using a non-incremental search
! 1447: for a string supplied by the user.
! 1448: <P>
! 1449:
! 1450: <A NAME="IDX72"></A>
! 1451: <DT><CODE>history-search-forward ()</CODE>
! 1452: <DD><A NAME="IDX73"></A>
! 1453: Search forward through the history for the string of characters
! 1454: between the start of the current line and the point.
! 1455: The search string must match at the beginning of a history line.
! 1456: This is a non-incremental search.
! 1457: By default, this command is unbound.
! 1458: <P>
! 1459:
! 1460: <A NAME="IDX74"></A>
! 1461: <DT><CODE>history-search-backward ()</CODE>
! 1462: <DD><A NAME="IDX75"></A>
! 1463: Search backward through the history for the string of characters
! 1464: between the start of the current line and the point.
! 1465: The search string must match at the beginning of a history line.
! 1466: This is a non-incremental search.
! 1467: By default, this command is unbound.
! 1468: <P>
! 1469:
! 1470: <A NAME="IDX76"></A>
! 1471: <DT><CODE>history-substr-search-forward ()</CODE>
! 1472: <DD><A NAME="IDX77"></A>
! 1473: Search forward through the history for the string of characters
! 1474: between the start of the current line and the point.
! 1475: The search string may match anywhere in a history line.
! 1476: This is a non-incremental search.
! 1477: By default, this command is unbound.
! 1478: <P>
! 1479:
! 1480: <A NAME="IDX78"></A>
! 1481: <DT><CODE>history-substr-search-backward ()</CODE>
! 1482: <DD><A NAME="IDX79"></A>
! 1483: Search backward through the history for the string of characters
! 1484: between the start of the current line and the point.
! 1485: The search string may match anywhere in a history line.
! 1486: This is a non-incremental search.
! 1487: By default, this command is unbound.
! 1488: <P>
! 1489:
! 1490: <A NAME="IDX80"></A>
! 1491: <DT><CODE>yank-nth-arg (M-C-y)</CODE>
! 1492: <DD><A NAME="IDX81"></A>
! 1493: Insert the first argument to the previous command (usually
! 1494: the second word on the previous line) at point.
! 1495: With an argument <VAR>n</VAR>,
! 1496: insert the <VAR>n</VAR>th word from the previous command (the words
! 1497: in the previous command begin with word 0). A negative argument
! 1498: inserts the <VAR>n</VAR>th word from the end of the previous command.
! 1499: Once the argument <VAR>n</VAR> is computed, the argument is extracted
! 1500: as if the <SAMP>`!<VAR>n</VAR>'</SAMP> history expansion had been specified.
! 1501: <P>
! 1502:
! 1503: <A NAME="IDX82"></A>
! 1504: <DT><CODE>yank-last-arg (M-. or M-_)</CODE>
! 1505: <DD><A NAME="IDX83"></A>
! 1506: Insert last argument to the previous command (the last word of the
! 1507: previous history entry).
! 1508: With a numeric argument, behave exactly like <CODE>yank-nth-arg</CODE>.
! 1509: Successive calls to <CODE>yank-last-arg</CODE> move back through the history
! 1510: list, inserting the last word (or the word specified by the argument to
! 1511: the first call) of each line in turn.
! 1512: Any numeric argument supplied to these successive calls determines
! 1513: the direction to move through the history. A negative argument switches
! 1514: the direction through the history (back or forward).
! 1515: The history expansion facilities are used to extract the last argument,
! 1516: as if the <SAMP>`!$'</SAMP> history expansion had been specified.
! 1517: <P>
! 1518:
! 1519: </DL>
! 1520: <P>
! 1521:
! 1522: <A NAME="Commands For Text"></A>
! 1523: <HR SIZE="6">
! 1524: <A NAME="SEC16"></A>
! 1525: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 1526: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC15"> < </A>]</TD>
! 1527: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC17"> > </A>]</TD>
! 1528: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC17"> << </A>]</TD>
! 1529: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
! 1530: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> >> </A>]</TD>
! 1531: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 1532: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 1533: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 1534: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 1535: </TR></TABLE>
! 1536: <H3> 1.4.3 Commands For Changing Text </H3>
! 1537: <!--docid::SEC16::-->
! 1538: <P>
! 1539:
! 1540: <DL COMPACT>
! 1541:
! 1542: <A NAME="IDX84"></A>
! 1543: <DT><CODE><I>end-of-file</I> (usually C-d)</CODE>
! 1544: <DD><A NAME="IDX85"></A>
! 1545: The character indicating end-of-file as set, for example, by
! 1546: <CODE>stty</CODE>. If this character is read when there are no characters
! 1547: on the line, and point is at the beginning of the line, Readline
! 1548: interprets it as the end of input and returns EOF.
! 1549: <P>
! 1550:
! 1551: <A NAME="IDX86"></A>
! 1552: <DT><CODE>delete-char (C-d)</CODE>
! 1553: <DD><A NAME="IDX87"></A>
! 1554: Delete the character at point. If this function is bound to the
! 1555: same character as the tty EOF character, as <KBD>C-d</KBD>
! 1556: commonly is, see above for the effects.
! 1557: <P>
! 1558:
! 1559: <A NAME="IDX88"></A>
! 1560: <DT><CODE>backward-delete-char (Rubout)</CODE>
! 1561: <DD><A NAME="IDX89"></A>
! 1562: Delete the character behind the cursor. A numeric argument means
! 1563: to kill the characters instead of deleting them.
! 1564: <P>
! 1565:
! 1566: <A NAME="IDX90"></A>
! 1567: <DT><CODE>forward-backward-delete-char ()</CODE>
! 1568: <DD><A NAME="IDX91"></A>
! 1569: Delete the character under the cursor, unless the cursor is at the
! 1570: end of the line, in which case the character behind the cursor is
! 1571: deleted. By default, this is not bound to a key.
! 1572: <P>
! 1573:
! 1574: <A NAME="IDX92"></A>
! 1575: <DT><CODE>quoted-insert (C-q or C-v)</CODE>
! 1576: <DD><A NAME="IDX93"></A>
! 1577: Add the next character typed to the line verbatim. This is
! 1578: how to insert key sequences like <KBD>C-q</KBD>, for example.
! 1579: <P>
! 1580:
! 1581: <A NAME="IDX94"></A>
! 1582: <DT><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE>
! 1583: <DD><A NAME="IDX95"></A>
! 1584: Insert a tab character.
! 1585: <P>
! 1586:
! 1587: <A NAME="IDX96"></A>
! 1588: <DT><CODE>self-insert (a, b, A, 1, !, <small>...</small>)</CODE>
! 1589: <DD><A NAME="IDX97"></A>
! 1590: Insert yourself.
! 1591: <P>
! 1592:
! 1593: <A NAME="IDX98"></A>
! 1594: <DT><CODE>transpose-chars (C-t)</CODE>
! 1595: <DD><A NAME="IDX99"></A>
! 1596: Drag the character before the cursor forward over
! 1597: the character at the cursor, moving the
! 1598: cursor forward as well. If the insertion point
! 1599: is at the end of the line, then this
! 1600: transposes the last two characters of the line.
! 1601: Negative arguments have no effect.
! 1602: <P>
! 1603:
! 1604: <A NAME="IDX100"></A>
! 1605: <DT><CODE>transpose-words (M-t)</CODE>
! 1606: <DD><A NAME="IDX101"></A>
! 1607: Drag the word before point past the word after point,
! 1608: moving point past that word as well.
! 1609: If the insertion point is at the end of the line, this transposes
! 1610: the last two words on the line.
! 1611: <P>
! 1612:
! 1613: <A NAME="IDX102"></A>
! 1614: <DT><CODE>upcase-word (M-u)</CODE>
! 1615: <DD><A NAME="IDX103"></A>
! 1616: Uppercase the current (or following) word. With a negative argument,
! 1617: uppercase the previous word, but do not move the cursor.
! 1618: <P>
! 1619:
! 1620: <A NAME="IDX104"></A>
! 1621: <DT><CODE>downcase-word (M-l)</CODE>
! 1622: <DD><A NAME="IDX105"></A>
! 1623: Lowercase the current (or following) word. With a negative argument,
! 1624: lowercase the previous word, but do not move the cursor.
! 1625: <P>
! 1626:
! 1627: <A NAME="IDX106"></A>
! 1628: <DT><CODE>capitalize-word (M-c)</CODE>
! 1629: <DD><A NAME="IDX107"></A>
! 1630: Capitalize the current (or following) word. With a negative argument,
! 1631: capitalize the previous word, but do not move the cursor.
! 1632: <P>
! 1633:
! 1634: <A NAME="IDX108"></A>
! 1635: <DT><CODE>overwrite-mode ()</CODE>
! 1636: <DD><A NAME="IDX109"></A>
! 1637: Toggle overwrite mode. With an explicit positive numeric argument,
! 1638: switches to overwrite mode. With an explicit non-positive numeric
! 1639: argument, switches to insert mode. This command affects only
! 1640: <CODE>emacs</CODE> mode; <CODE>vi</CODE> mode does overwrite differently.
! 1641: Each call to <CODE>readline()</CODE> starts in insert mode.
! 1642: <P>
! 1643:
! 1644: In overwrite mode, characters bound to <CODE>self-insert</CODE> replace
! 1645: the text at point rather than pushing the text to the right.
! 1646: Characters bound to <CODE>backward-delete-char</CODE> replace the character
! 1647: before point with a space.
! 1648: </P><P>
! 1649:
! 1650: By default, this command is unbound.
! 1651: </P><P>
! 1652:
! 1653: </DL>
! 1654: <P>
! 1655:
! 1656: <A NAME="Commands For Killing"></A>
! 1657: <HR SIZE="6">
! 1658: <A NAME="SEC17"></A>
! 1659: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 1660: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC16"> < </A>]</TD>
! 1661: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC18"> > </A>]</TD>
! 1662: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC18"> << </A>]</TD>
! 1663: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
! 1664: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> >> </A>]</TD>
! 1665: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 1666: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 1667: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 1668: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 1669: </TR></TABLE>
! 1670: <H3> 1.4.4 Killing And Yanking </H3>
! 1671: <!--docid::SEC17::-->
! 1672: <P>
! 1673:
! 1674: <DL COMPACT>
! 1675:
! 1676: <A NAME="IDX110"></A>
! 1677: <DT><CODE>kill-line (C-k)</CODE>
! 1678: <DD><A NAME="IDX111"></A>
! 1679: Kill the text from point to the end of the line.
! 1680: <P>
! 1681:
! 1682: <A NAME="IDX112"></A>
! 1683: <DT><CODE>backward-kill-line (C-x Rubout)</CODE>
! 1684: <DD><A NAME="IDX113"></A>
! 1685: Kill backward to the beginning of the line.
! 1686: <P>
! 1687:
! 1688: <A NAME="IDX114"></A>
! 1689: <DT><CODE>unix-line-discard (C-u)</CODE>
! 1690: <DD><A NAME="IDX115"></A>
! 1691: Kill backward from the cursor to the beginning of the current line.
! 1692: <P>
! 1693:
! 1694: <A NAME="IDX116"></A>
! 1695: <DT><CODE>kill-whole-line ()</CODE>
! 1696: <DD><A NAME="IDX117"></A>
! 1697: Kill all characters on the current line, no matter where point is.
! 1698: By default, this is unbound.
! 1699: <P>
! 1700:
! 1701: <A NAME="IDX118"></A>
! 1702: <DT><CODE>kill-word (M-d)</CODE>
! 1703: <DD><A NAME="IDX119"></A>
! 1704: Kill from point to the end of the current word, or if between
! 1705: words, to the end of the next word.
! 1706: Word boundaries are the same as <CODE>forward-word</CODE>.
! 1707: <P>
! 1708:
! 1709: <A NAME="IDX120"></A>
! 1710: <DT><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE>
! 1711: <DD><A NAME="IDX121"></A>
! 1712: Kill the word behind point.
! 1713: Word boundaries are the same as <CODE>backward-word</CODE>.
! 1714: <P>
! 1715:
! 1716: <A NAME="IDX122"></A>
! 1717: <DT><CODE>unix-word-rubout (C-w)</CODE>
! 1718: <DD><A NAME="IDX123"></A>
! 1719: Kill the word behind point, using white space as a word boundary.
! 1720: The killed text is saved on the kill-ring.
! 1721: <P>
! 1722:
! 1723: <A NAME="IDX124"></A>
! 1724: <DT><CODE>unix-filename-rubout ()</CODE>
! 1725: <DD><A NAME="IDX125"></A>
! 1726: Kill the word behind point, using white space and the slash character
! 1727: as the word boundaries.
! 1728: The killed text is saved on the kill-ring.
! 1729: <P>
! 1730:
! 1731: <A NAME="IDX126"></A>
! 1732: <DT><CODE>delete-horizontal-space ()</CODE>
! 1733: <DD><A NAME="IDX127"></A>
! 1734: Delete all spaces and tabs around point. By default, this is unbound.
! 1735: <P>
! 1736:
! 1737: <A NAME="IDX128"></A>
! 1738: <DT><CODE>kill-region ()</CODE>
! 1739: <DD><A NAME="IDX129"></A>
! 1740: Kill the text in the current region.
! 1741: By default, this command is unbound.
! 1742: <P>
! 1743:
! 1744: <A NAME="IDX130"></A>
! 1745: <DT><CODE>copy-region-as-kill ()</CODE>
! 1746: <DD><A NAME="IDX131"></A>
! 1747: Copy the text in the region to the kill buffer, so it can be yanked
! 1748: right away. By default, this command is unbound.
! 1749: <P>
! 1750:
! 1751: <A NAME="IDX132"></A>
! 1752: <DT><CODE>copy-backward-word ()</CODE>
! 1753: <DD><A NAME="IDX133"></A>
! 1754: Copy the word before point to the kill buffer.
! 1755: The word boundaries are the same as <CODE>backward-word</CODE>.
! 1756: By default, this command is unbound.
! 1757: <P>
! 1758:
! 1759: <A NAME="IDX134"></A>
! 1760: <DT><CODE>copy-forward-word ()</CODE>
! 1761: <DD><A NAME="IDX135"></A>
! 1762: Copy the word following point to the kill buffer.
! 1763: The word boundaries are the same as <CODE>forward-word</CODE>.
! 1764: By default, this command is unbound.
! 1765: <P>
! 1766:
! 1767: <A NAME="IDX136"></A>
! 1768: <DT><CODE>yank (C-y)</CODE>
! 1769: <DD><A NAME="IDX137"></A>
! 1770: Yank the top of the kill ring into the buffer at point.
! 1771: <P>
! 1772:
! 1773: <A NAME="IDX138"></A>
! 1774: <DT><CODE>yank-pop (M-y)</CODE>
! 1775: <DD><A NAME="IDX139"></A>
! 1776: Rotate the kill-ring, and yank the new top. You can only do this if
! 1777: the prior command is <CODE>yank</CODE> or <CODE>yank-pop</CODE>.
! 1778: </DL>
! 1779: <P>
! 1780:
! 1781: <A NAME="Numeric Arguments"></A>
! 1782: <HR SIZE="6">
! 1783: <A NAME="SEC18"></A>
! 1784: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 1785: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC17"> < </A>]</TD>
! 1786: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC19"> > </A>]</TD>
! 1787: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC19"> << </A>]</TD>
! 1788: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
! 1789: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> >> </A>]</TD>
! 1790: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 1791: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 1792: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 1793: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 1794: </TR></TABLE>
! 1795: <H3> 1.4.5 Specifying Numeric Arguments </H3>
! 1796: <!--docid::SEC18::-->
! 1797: <DL COMPACT>
! 1798:
! 1799: <A NAME="IDX140"></A>
! 1800: <DT><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, <small>...</small> <KBD>M--</KBD>)</CODE>
! 1801: <DD><A NAME="IDX141"></A>
! 1802: Add this digit to the argument already accumulating, or start a new
! 1803: argument. <KBD>M--</KBD> starts a negative argument.
! 1804: <P>
! 1805:
! 1806: <A NAME="IDX142"></A>
! 1807: <DT><CODE>universal-argument ()</CODE>
! 1808: <DD><A NAME="IDX143"></A>
! 1809: This is another way to specify an argument.
! 1810: If this command is followed by one or more digits, optionally with a
! 1811: leading minus sign, those digits define the argument.
! 1812: If the command is followed by digits, executing <CODE>universal-argument</CODE>
! 1813: again ends the numeric argument, but is otherwise ignored.
! 1814: As a special case, if this command is immediately followed by a
! 1815: character that is neither a digit or minus sign, the argument count
! 1816: for the next command is multiplied by four.
! 1817: The argument count is initially one, so executing this function the
! 1818: first time makes the argument count four, a second time makes the
! 1819: argument count sixteen, and so on.
! 1820: By default, this is not bound to a key.
! 1821: </DL>
! 1822: <P>
! 1823:
! 1824: <A NAME="Commands For Completion"></A>
! 1825: <HR SIZE="6">
! 1826: <A NAME="SEC19"></A>
! 1827: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 1828: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC18"> < </A>]</TD>
! 1829: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC20"> > </A>]</TD>
! 1830: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC20"> << </A>]</TD>
! 1831: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
! 1832: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> >> </A>]</TD>
! 1833: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 1834: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 1835: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 1836: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 1837: </TR></TABLE>
! 1838: <H3> 1.4.6 Letting Readline Type For You </H3>
! 1839: <!--docid::SEC19::-->
! 1840: <P>
! 1841:
! 1842: <DL COMPACT>
! 1843: <A NAME="IDX144"></A>
! 1844: <DT><CODE>complete (<KBD>TAB</KBD>)</CODE>
! 1845: <DD><A NAME="IDX145"></A>
! 1846: Attempt to perform completion on the text before point.
! 1847: The actual completion performed is application-specific.
! 1848: The default is filename completion.
! 1849: <P>
! 1850:
! 1851: <A NAME="IDX146"></A>
! 1852: <DT><CODE>possible-completions (M-?)</CODE>
! 1853: <DD><A NAME="IDX147"></A>
! 1854: List the possible completions of the text before point.
! 1855: When displaying completions, Readline sets the number of columns used
! 1856: for display to the value of <CODE>completion-display-width</CODE>, the value of
! 1857: the environment variable <CODE>COLUMNS</CODE>, or the screen width, in that order.
! 1858: <P>
! 1859:
! 1860: <A NAME="IDX148"></A>
! 1861: <DT><CODE>insert-completions (M-*)</CODE>
! 1862: <DD><A NAME="IDX149"></A>
! 1863: Insert all completions of the text before point that would have
! 1864: been generated by <CODE>possible-completions</CODE>.
! 1865: <P>
! 1866:
! 1867: <A NAME="IDX150"></A>
! 1868: <DT><CODE>menu-complete ()</CODE>
! 1869: <DD><A NAME="IDX151"></A>
! 1870: Similar to <CODE>complete</CODE>, but replaces the word to be completed
! 1871: with a single match from the list of possible completions.
! 1872: Repeated execution of <CODE>menu-complete</CODE> steps through the list
! 1873: of possible completions, inserting each match in turn.
! 1874: At the end of the list of completions, the bell is rung
! 1875: (subject to the setting of <CODE>bell-style</CODE>)
! 1876: and the original text is restored.
! 1877: An argument of <VAR>n</VAR> moves <VAR>n</VAR> positions forward in the list
! 1878: of matches; a negative argument may be used to move backward
! 1879: through the list.
! 1880: This command is intended to be bound to <KBD>TAB</KBD>, but is unbound
! 1881: by default.
! 1882: <P>
! 1883:
! 1884: <A NAME="IDX152"></A>
! 1885: <DT><CODE>menu-complete-backward ()</CODE>
! 1886: <DD><A NAME="IDX153"></A>
! 1887: Identical to <CODE>menu-complete</CODE>, but moves backward through the list
! 1888: of possible completions, as if <CODE>menu-complete</CODE> had been given a
! 1889: negative argument.
! 1890: <P>
! 1891:
! 1892: <A NAME="IDX154"></A>
! 1893: <DT><CODE>delete-char-or-list ()</CODE>
! 1894: <DD><A NAME="IDX155"></A>
! 1895: Deletes the character under the cursor if not at the beginning or
! 1896: end of the line (like <CODE>delete-char</CODE>).
! 1897: If at the end of the line, behaves identically to
! 1898: <CODE>possible-completions</CODE>.
! 1899: This command is unbound by default.
! 1900: <P>
! 1901:
! 1902: </DL>
! 1903: <P>
! 1904:
! 1905: <A NAME="Keyboard Macros"></A>
! 1906: <HR SIZE="6">
! 1907: <A NAME="SEC20"></A>
! 1908: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 1909: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC19"> < </A>]</TD>
! 1910: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC21"> > </A>]</TD>
! 1911: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC21"> << </A>]</TD>
! 1912: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
! 1913: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> >> </A>]</TD>
! 1914: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 1915: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 1916: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 1917: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 1918: </TR></TABLE>
! 1919: <H3> 1.4.7 Keyboard Macros </H3>
! 1920: <!--docid::SEC20::-->
! 1921: <DL COMPACT>
! 1922:
! 1923: <A NAME="IDX156"></A>
! 1924: <DT><CODE>start-kbd-macro (C-x ()</CODE>
! 1925: <DD><A NAME="IDX157"></A>
! 1926: Begin saving the characters typed into the current keyboard macro.
! 1927: <P>
! 1928:
! 1929: <A NAME="IDX158"></A>
! 1930: <DT><CODE>end-kbd-macro (C-x ))</CODE>
! 1931: <DD><A NAME="IDX159"></A>
! 1932: Stop saving the characters typed into the current keyboard macro
! 1933: and save the definition.
! 1934: <P>
! 1935:
! 1936: <A NAME="IDX160"></A>
! 1937: <DT><CODE>call-last-kbd-macro (C-x e)</CODE>
! 1938: <DD><A NAME="IDX161"></A>
! 1939: Re-execute the last keyboard macro defined, by making the characters
! 1940: in the macro appear as if typed at the keyboard.
! 1941: <P>
! 1942:
! 1943: <A NAME="IDX162"></A>
! 1944: <DT><CODE>print-last-kbd-macro ()</CODE>
! 1945: <DD><A NAME="IDX163"></A>
! 1946: Print the last keboard macro defined in a format suitable for the
! 1947: <VAR>inputrc</VAR> file.
! 1948: <P>
! 1949:
! 1950: </DL>
! 1951: <P>
! 1952:
! 1953: <A NAME="Miscellaneous Commands"></A>
! 1954: <HR SIZE="6">
! 1955: <A NAME="SEC21"></A>
! 1956: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 1957: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC20"> < </A>]</TD>
! 1958: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> > </A>]</TD>
! 1959: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> << </A>]</TD>
! 1960: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
! 1961: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> >> </A>]</TD>
! 1962: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 1963: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 1964: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 1965: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 1966: </TR></TABLE>
! 1967: <H3> 1.4.8 Some Miscellaneous Commands </H3>
! 1968: <!--docid::SEC21::-->
! 1969: <DL COMPACT>
! 1970:
! 1971: <A NAME="IDX164"></A>
! 1972: <DT><CODE>re-read-init-file (C-x C-r)</CODE>
! 1973: <DD><A NAME="IDX165"></A>
! 1974: Read in the contents of the <VAR>inputrc</VAR> file, and incorporate
! 1975: any bindings or variable assignments found there.
! 1976: <P>
! 1977:
! 1978: <A NAME="IDX166"></A>
! 1979: <DT><CODE>abort (C-g)</CODE>
! 1980: <DD><A NAME="IDX167"></A>
! 1981: Abort the current editing command and
! 1982: ring the terminal's bell (subject to the setting of
! 1983: <CODE>bell-style</CODE>).
! 1984: <P>
! 1985:
! 1986: <A NAME="IDX168"></A>
! 1987: <DT><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, <small>...</small>)</CODE>
! 1988: <DD><A NAME="IDX169"></A>
! 1989: If the metafied character <VAR>x</VAR> is lowercase, run the command
! 1990: that is bound to the corresponding uppercase character.
! 1991: <P>
! 1992:
! 1993: <A NAME="IDX170"></A>
! 1994: <DT><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE>
! 1995: <DD><A NAME="IDX171"></A>
! 1996: Metafy the next character typed. This is for keyboards
! 1997: without a meta key. Typing <SAMP>`<KBD>ESC</KBD> f'</SAMP> is equivalent to typing
! 1998: <KBD>M-f</KBD>.
! 1999: <P>
! 2000:
! 2001: <A NAME="IDX172"></A>
! 2002: <DT><CODE>undo (C-_ or C-x C-u)</CODE>
! 2003: <DD><A NAME="IDX173"></A>
! 2004: Incremental undo, separately remembered for each line.
! 2005: <P>
! 2006:
! 2007: <A NAME="IDX174"></A>
! 2008: <DT><CODE>revert-line (M-r)</CODE>
! 2009: <DD><A NAME="IDX175"></A>
! 2010: Undo all changes made to this line. This is like executing the <CODE>undo</CODE>
! 2011: command enough times to get back to the beginning.
! 2012: <P>
! 2013:
! 2014: <A NAME="IDX176"></A>
! 2015: <DT><CODE>tilde-expand (M-~)</CODE>
! 2016: <DD><A NAME="IDX177"></A>
! 2017: Perform tilde expansion on the current word.
! 2018: <P>
! 2019:
! 2020: <A NAME="IDX178"></A>
! 2021: <DT><CODE>set-mark (C-@)</CODE>
! 2022: <DD><A NAME="IDX179"></A>
! 2023: Set the mark to the point. If a
! 2024: numeric argument is supplied, the mark is set to that position.
! 2025: <P>
! 2026:
! 2027: <A NAME="IDX180"></A>
! 2028: <DT><CODE>exchange-point-and-mark (C-x C-x)</CODE>
! 2029: <DD><A NAME="IDX181"></A>
! 2030: Swap the point with the mark. The current cursor position is set to
! 2031: the saved position, and the old cursor position is saved as the mark.
! 2032: <P>
! 2033:
! 2034: <A NAME="IDX182"></A>
! 2035: <DT><CODE>character-search (C-])</CODE>
! 2036: <DD><A NAME="IDX183"></A>
! 2037: A character is read and point is moved to the next occurrence of that
! 2038: character. A negative count searches for previous occurrences.
! 2039: <P>
! 2040:
! 2041: <A NAME="IDX184"></A>
! 2042: <DT><CODE>character-search-backward (M-C-])</CODE>
! 2043: <DD><A NAME="IDX185"></A>
! 2044: A character is read and point is moved to the previous occurrence
! 2045: of that character. A negative count searches for subsequent
! 2046: occurrences.
! 2047: <P>
! 2048:
! 2049: <A NAME="IDX186"></A>
! 2050: <DT><CODE>skip-csi-sequence ()</CODE>
! 2051: <DD><A NAME="IDX187"></A>
! 2052: Read enough characters to consume a multi-key sequence such as those
! 2053: defined for keys like Home and End. Such sequences begin with a
! 2054: Control Sequence Indicator (CSI), usually ESC-[. If this sequence is
! 2055: bound to "\e[", keys producing such sequences will have no effect
! 2056: unless explicitly bound to a readline command, instead of inserting
! 2057: stray characters into the editing buffer. This is unbound by default,
! 2058: but usually bound to ESC-[.
! 2059: <P>
! 2060:
! 2061: <A NAME="IDX188"></A>
! 2062: <DT><CODE>insert-comment (M-#)</CODE>
! 2063: <DD><A NAME="IDX189"></A>
! 2064: Without a numeric argument, the value of the <CODE>comment-begin</CODE>
! 2065: variable is inserted at the beginning of the current line.
! 2066: If a numeric argument is supplied, this command acts as a toggle: if
! 2067: the characters at the beginning of the line do not match the value
! 2068: of <CODE>comment-begin</CODE>, the value is inserted, otherwise
! 2069: the characters in <CODE>comment-begin</CODE> are deleted from the beginning of
! 2070: the line.
! 2071: In either case, the line is accepted as if a newline had been typed.
! 2072: <P>
! 2073:
! 2074: <A NAME="IDX190"></A>
! 2075: <DT><CODE>dump-functions ()</CODE>
! 2076: <DD><A NAME="IDX191"></A>
! 2077: Print all of the functions and their key bindings to the
! 2078: Readline output stream. If a numeric argument is supplied,
! 2079: the output is formatted in such a way that it can be made part
! 2080: of an <VAR>inputrc</VAR> file. This command is unbound by default.
! 2081: <P>
! 2082:
! 2083: <A NAME="IDX192"></A>
! 2084: <DT><CODE>dump-variables ()</CODE>
! 2085: <DD><A NAME="IDX193"></A>
! 2086: Print all of the settable variables and their values to the
! 2087: Readline output stream. If a numeric argument is supplied,
! 2088: the output is formatted in such a way that it can be made part
! 2089: of an <VAR>inputrc</VAR> file. This command is unbound by default.
! 2090: <P>
! 2091:
! 2092: <A NAME="IDX194"></A>
! 2093: <DT><CODE>dump-macros ()</CODE>
! 2094: <DD><A NAME="IDX195"></A>
! 2095: Print all of the Readline key sequences bound to macros and the
! 2096: strings they output. If a numeric argument is supplied,
! 2097: the output is formatted in such a way that it can be made part
! 2098: of an <VAR>inputrc</VAR> file. This command is unbound by default.
! 2099: <P>
! 2100:
! 2101: <A NAME="IDX196"></A>
! 2102: <DT><CODE>emacs-editing-mode (C-e)</CODE>
! 2103: <DD><A NAME="IDX197"></A>
! 2104: When in <CODE>vi</CODE> command mode, this causes a switch to <CODE>emacs</CODE>
! 2105: editing mode.
! 2106: <P>
! 2107:
! 2108: <A NAME="IDX198"></A>
! 2109: <DT><CODE>vi-editing-mode (M-C-j)</CODE>
! 2110: <DD><A NAME="IDX199"></A>
! 2111: When in <CODE>emacs</CODE> editing mode, this causes a switch to <CODE>vi</CODE>
! 2112: editing mode.
! 2113: <P>
! 2114:
! 2115: </DL>
! 2116: <P>
! 2117:
! 2118: <A NAME="Readline vi Mode"></A>
! 2119: <HR SIZE="6">
! 2120: <A NAME="SEC22"></A>
! 2121: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 2122: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC21"> < </A>]</TD>
! 2123: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC23"> > </A>]</TD>
! 2124: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD>
! 2125: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> Up </A>]</TD>
! 2126: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC23"> >> </A>]</TD>
! 2127: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 2128: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 2129: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 2130: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 2131: </TR></TABLE>
! 2132: <H2> 1.5 Readline vi Mode </H2>
! 2133: <!--docid::SEC22::-->
! 2134: <P>
! 2135:
! 2136: While the Readline library does not have a full set of <CODE>vi</CODE>
! 2137: editing functions, it does contain enough to allow simple editing
! 2138: of the line. The Readline <CODE>vi</CODE> mode behaves as specified in
! 2139: the POSIX standard.
! 2140: </P><P>
! 2141:
! 2142: In order to switch interactively between <CODE>emacs</CODE> and <CODE>vi</CODE>
! 2143: editing modes, use the command <KBD>M-C-j</KBD> (bound to emacs-editing-mode
! 2144: when in <CODE>vi</CODE> mode and to vi-editing-mode in <CODE>emacs</CODE> mode).
! 2145: The Readline default is <CODE>emacs</CODE> mode.
! 2146: </P><P>
! 2147:
! 2148: When you enter a line in <CODE>vi</CODE> mode, you are already placed in
! 2149: `insertion' mode, as if you had typed an <SAMP>`i'</SAMP>. Pressing <KBD>ESC</KBD>
! 2150: switches you into `command' mode, where you can edit the text of the
! 2151: line with the standard <CODE>vi</CODE> movement keys, move to previous
! 2152: history lines with <SAMP>`k'</SAMP> and subsequent lines with <SAMP>`j'</SAMP>, and
! 2153: so forth.
! 2154: </P><P>
! 2155:
! 2156: <A NAME="GNU Free Documentation License"></A>
! 2157: <HR SIZE="6">
! 2158: <A NAME="SEC23"></A>
! 2159: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 2160: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> < </A>]</TD>
! 2161: <TD VALIGN="MIDDLE" ALIGN="LEFT">[ > ]</TD>
! 2162: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> << </A>]</TD>
! 2163: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top"> Up </A>]</TD>
! 2164: <TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD>
! 2165: <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 2166: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 2167: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 2168: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 2169: </TR></TABLE>
! 2170: <H1> A. GNU Free Documentation License </H1>
! 2171: <!--docid::SEC23::-->
! 2172: <P>
! 2173:
! 2174: <center>
! 2175: Version 1.3, 3 November 2008
! 2176: </center>
! 2177: </P><P>
! 2178:
! 2179: <TABLE><tr><td> </td><td class=display><pre style="font-family: serif">Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
! 2180: <A HREF="http://fsf.org/">http://fsf.org/</A>
! 2181:
! 2182: Everyone is permitted to copy and distribute verbatim copies
! 2183: of this license document, but changing it is not allowed.
! 2184: </pre></td></tr></table></P><P>
! 2185:
! 2186: <OL>
! 2187: <LI>
! 2188: PREAMBLE
! 2189: <P>
! 2190:
! 2191: The purpose of this License is to make a manual, textbook, or other
! 2192: functional and useful document <EM>free</EM> in the sense of freedom: to
! 2193: assure everyone the effective freedom to copy and redistribute it,
! 2194: with or without modifying it, either commercially or noncommercially.
! 2195: Secondarily, this License preserves for the author and publisher a way
! 2196: to get credit for their work, while not being considered responsible
! 2197: for modifications made by others.
! 2198: </P><P>
! 2199:
! 2200: This License is a kind of "copyleft", which means that derivative
! 2201: works of the document must themselves be free in the same sense. It
! 2202: complements the GNU General Public License, which is a copyleft
! 2203: license designed for free software.
! 2204: </P><P>
! 2205:
! 2206: We have designed this License in order to use it for manuals for free
! 2207: software, because free software needs free documentation: a free
! 2208: program should come with manuals providing the same freedoms that the
! 2209: software does. But this License is not limited to software manuals;
! 2210: it can be used for any textual work, regardless of subject matter or
! 2211: whether it is published as a printed book. We recommend this License
! 2212: principally for works whose purpose is instruction or reference.
! 2213: </P><P>
! 2214:
! 2215: <LI>
! 2216: APPLICABILITY AND DEFINITIONS
! 2217: <P>
! 2218:
! 2219: This License applies to any manual or other work, in any medium, that
! 2220: contains a notice placed by the copyright holder saying it can be
! 2221: distributed under the terms of this License. Such a notice grants a
! 2222: world-wide, royalty-free license, unlimited in duration, to use that
! 2223: work under the conditions stated herein. The "Document", below,
! 2224: refers to any such manual or work. Any member of the public is a
! 2225: licensee, and is addressed as "you". You accept the license if you
! 2226: copy, modify or distribute the work in a way requiring permission
! 2227: under copyright law.
! 2228: </P><P>
! 2229:
! 2230: A "Modified Version" of the Document means any work containing the
! 2231: Document or a portion of it, either copied verbatim, or with
! 2232: modifications and/or translated into another language.
! 2233: </P><P>
! 2234:
! 2235: A "Secondary Section" is a named appendix or a front-matter section
! 2236: of the Document that deals exclusively with the relationship of the
! 2237: publishers or authors of the Document to the Document's overall
! 2238: subject (or to related matters) and contains nothing that could fall
! 2239: directly within that overall subject. (Thus, if the Document is in
! 2240: part a textbook of mathematics, a Secondary Section may not explain
! 2241: any mathematics.) The relationship could be a matter of historical
! 2242: connection with the subject or with related matters, or of legal,
! 2243: commercial, philosophical, ethical or political position regarding
! 2244: them.
! 2245: </P><P>
! 2246:
! 2247: The "Invariant Sections" are certain Secondary Sections whose titles
! 2248: are designated, as being those of Invariant Sections, in the notice
! 2249: that says that the Document is released under this License. If a
! 2250: section does not fit the above definition of Secondary then it is not
! 2251: allowed to be designated as Invariant. The Document may contain zero
! 2252: Invariant Sections. If the Document does not identify any Invariant
! 2253: Sections then there are none.
! 2254: </P><P>
! 2255:
! 2256: The "Cover Texts" are certain short passages of text that are listed,
! 2257: as Front-Cover Texts or Back-Cover Texts, in the notice that says that
! 2258: the Document is released under this License. A Front-Cover Text may
! 2259: be at most 5 words, and a Back-Cover Text may be at most 25 words.
! 2260: </P><P>
! 2261:
! 2262: A "Transparent" copy of the Document means a machine-readable copy,
! 2263: represented in a format whose specification is available to the
! 2264: general public, that is suitable for revising the document
! 2265: straightforwardly with generic text editors or (for images composed of
! 2266: pixels) generic paint programs or (for drawings) some widely available
! 2267: drawing editor, and that is suitable for input to text formatters or
! 2268: for automatic translation to a variety of formats suitable for input
! 2269: to text formatters. A copy made in an otherwise Transparent file
! 2270: format whose markup, or absence of markup, has been arranged to thwart
! 2271: or discourage subsequent modification by readers is not Transparent.
! 2272: An image format is not Transparent if used for any substantial amount
! 2273: of text. A copy that is not "Transparent" is called "Opaque".
! 2274: </P><P>
! 2275:
! 2276: Examples of suitable formats for Transparent copies include plain
! 2277: ASCII without markup, Texinfo input format, LaTeX input
! 2278: format, <FONT SIZE="-1">SGML</FONT> or <FONT SIZE="-1">XML</FONT> using a publicly available
! 2279: <FONT SIZE="-1">DTD</FONT>, and standard-conforming simple <FONT SIZE="-1">HTML</FONT>,
! 2280: PostScript or <FONT SIZE="-1">PDF</FONT> designed for human modification. Examples
! 2281: of transparent image formats include <FONT SIZE="-1">PNG</FONT>, <FONT SIZE="-1">XCF</FONT> and
! 2282: <FONT SIZE="-1">JPG</FONT>. Opaque formats include proprietary formats that can be
! 2283: read and edited only by proprietary word processors, <FONT SIZE="-1">SGML</FONT> or
! 2284: <FONT SIZE="-1">XML</FONT> for which the <FONT SIZE="-1">DTD</FONT> and/or processing tools are
! 2285: not generally available, and the machine-generated <FONT SIZE="-1">HTML</FONT>,
! 2286: PostScript or <FONT SIZE="-1">PDF</FONT> produced by some word processors for
! 2287: output purposes only.
! 2288: </P><P>
! 2289:
! 2290: The "Title Page" means, for a printed book, the title page itself,
! 2291: plus such following pages as are needed to hold, legibly, the material
! 2292: this License requires to appear in the title page. For works in
! 2293: formats which do not have any title page as such, "Title Page" means
! 2294: the text near the most prominent appearance of the work's title,
! 2295: preceding the beginning of the body of the text.
! 2296: </P><P>
! 2297:
! 2298: The "publisher" means any person or entity that distributes copies
! 2299: of the Document to the public.
! 2300: </P><P>
! 2301:
! 2302: A section "Entitled XYZ" means a named subunit of the Document whose
! 2303: title either is precisely XYZ or contains XYZ in parentheses following
! 2304: text that translates XYZ in another language. (Here XYZ stands for a
! 2305: specific section name mentioned below, such as "Acknowledgements",
! 2306: "Dedications", "Endorsements", or "History".) To "Preserve the Title"
! 2307: of such a section when you modify the Document means that it remains a
! 2308: section "Entitled XYZ" according to this definition.
! 2309: </P><P>
! 2310:
! 2311: The Document may include Warranty Disclaimers next to the notice which
! 2312: states that this License applies to the Document. These Warranty
! 2313: Disclaimers are considered to be included by reference in this
! 2314: License, but only as regards disclaiming warranties: any other
! 2315: implication that these Warranty Disclaimers may have is void and has
! 2316: no effect on the meaning of this License.
! 2317: </P><P>
! 2318:
! 2319: <LI>
! 2320: VERBATIM COPYING
! 2321: <P>
! 2322:
! 2323: You may copy and distribute the Document in any medium, either
! 2324: commercially or noncommercially, provided that this License, the
! 2325: copyright notices, and the license notice saying this License applies
! 2326: to the Document are reproduced in all copies, and that you add no other
! 2327: conditions whatsoever to those of this License. You may not use
! 2328: technical measures to obstruct or control the reading or further
! 2329: copying of the copies you make or distribute. However, you may accept
! 2330: compensation in exchange for copies. If you distribute a large enough
! 2331: number of copies you must also follow the conditions in section 3.
! 2332: </P><P>
! 2333:
! 2334: You may also lend copies, under the same conditions stated above, and
! 2335: you may publicly display copies.
! 2336: </P><P>
! 2337:
! 2338: <LI>
! 2339: COPYING IN QUANTITY
! 2340: <P>
! 2341:
! 2342: If you publish printed copies (or copies in media that commonly have
! 2343: printed covers) of the Document, numbering more than 100, and the
! 2344: Document's license notice requires Cover Texts, you must enclose the
! 2345: copies in covers that carry, clearly and legibly, all these Cover
! 2346: Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
! 2347: the back cover. Both covers must also clearly and legibly identify
! 2348: you as the publisher of these copies. The front cover must present
! 2349: the full title with all words of the title equally prominent and
! 2350: visible. You may add other material on the covers in addition.
! 2351: Copying with changes limited to the covers, as long as they preserve
! 2352: the title of the Document and satisfy these conditions, can be treated
! 2353: as verbatim copying in other respects.
! 2354: </P><P>
! 2355:
! 2356: If the required texts for either cover are too voluminous to fit
! 2357: legibly, you should put the first ones listed (as many as fit
! 2358: reasonably) on the actual cover, and continue the rest onto adjacent
! 2359: pages.
! 2360: </P><P>
! 2361:
! 2362: If you publish or distribute Opaque copies of the Document numbering
! 2363: more than 100, you must either include a machine-readable Transparent
! 2364: copy along with each Opaque copy, or state in or with each Opaque copy
! 2365: a computer-network location from which the general network-using
! 2366: public has access to download using public-standard network protocols
! 2367: a complete Transparent copy of the Document, free of added material.
! 2368: If you use the latter option, you must take reasonably prudent steps,
! 2369: when you begin distribution of Opaque copies in quantity, to ensure
! 2370: that this Transparent copy will remain thus accessible at the stated
! 2371: location until at least one year after the last time you distribute an
! 2372: Opaque copy (directly or through your agents or retailers) of that
! 2373: edition to the public.
! 2374: </P><P>
! 2375:
! 2376: It is requested, but not required, that you contact the authors of the
! 2377: Document well before redistributing any large number of copies, to give
! 2378: them a chance to provide you with an updated version of the Document.
! 2379: </P><P>
! 2380:
! 2381: <LI>
! 2382: MODIFICATIONS
! 2383: <P>
! 2384:
! 2385: You may copy and distribute a Modified Version of the Document under
! 2386: the conditions of sections 2 and 3 above, provided that you release
! 2387: the Modified Version under precisely this License, with the Modified
! 2388: Version filling the role of the Document, thus licensing distribution
! 2389: and modification of the Modified Version to whoever possesses a copy
! 2390: of it. In addition, you must do these things in the Modified Version:
! 2391: </P><P>
! 2392:
! 2393: <OL>
! 2394: <LI>
! 2395: Use in the Title Page (and on the covers, if any) a title distinct
! 2396: from that of the Document, and from those of previous versions
! 2397: (which should, if there were any, be listed in the History section
! 2398: of the Document). You may use the same title as a previous version
! 2399: if the original publisher of that version gives permission.
! 2400: <P>
! 2401:
! 2402: <LI>
! 2403: List on the Title Page, as authors, one or more persons or entities
! 2404: responsible for authorship of the modifications in the Modified
! 2405: Version, together with at least five of the principal authors of the
! 2406: Document (all of its principal authors, if it has fewer than five),
! 2407: unless they release you from this requirement.
! 2408: <P>
! 2409:
! 2410: <LI>
! 2411: State on the Title page the name of the publisher of the
! 2412: Modified Version, as the publisher.
! 2413: <P>
! 2414:
! 2415: <LI>
! 2416: Preserve all the copyright notices of the Document.
! 2417: <P>
! 2418:
! 2419: <LI>
! 2420: Add an appropriate copyright notice for your modifications
! 2421: adjacent to the other copyright notices.
! 2422: <P>
! 2423:
! 2424: <LI>
! 2425: Include, immediately after the copyright notices, a license notice
! 2426: giving the public permission to use the Modified Version under the
! 2427: terms of this License, in the form shown in the Addendum below.
! 2428: <P>
! 2429:
! 2430: <LI>
! 2431: Preserve in that license notice the full lists of Invariant Sections
! 2432: and required Cover Texts given in the Document's license notice.
! 2433: <P>
! 2434:
! 2435: <LI>
! 2436: Include an unaltered copy of this License.
! 2437: <P>
! 2438:
! 2439: <LI>
! 2440: Preserve the section Entitled "History", Preserve its Title, and add
! 2441: to it an item stating at least the title, year, new authors, and
! 2442: publisher of the Modified Version as given on the Title Page. If
! 2443: there is no section Entitled "History" in the Document, create one
! 2444: stating the title, year, authors, and publisher of the Document as
! 2445: given on its Title Page, then add an item describing the Modified
! 2446: Version as stated in the previous sentence.
! 2447: <P>
! 2448:
! 2449: <LI>
! 2450: Preserve the network location, if any, given in the Document for
! 2451: public access to a Transparent copy of the Document, and likewise
! 2452: the network locations given in the Document for previous versions
! 2453: it was based on. These may be placed in the "History" section.
! 2454: You may omit a network location for a work that was published at
! 2455: least four years before the Document itself, or if the original
! 2456: publisher of the version it refers to gives permission.
! 2457: <P>
! 2458:
! 2459: <LI>
! 2460: For any section Entitled "Acknowledgements" or "Dedications", Preserve
! 2461: the Title of the section, and preserve in the section all the
! 2462: substance and tone of each of the contributor acknowledgements and/or
! 2463: dedications given therein.
! 2464: <P>
! 2465:
! 2466: <LI>
! 2467: Preserve all the Invariant Sections of the Document,
! 2468: unaltered in their text and in their titles. Section numbers
! 2469: or the equivalent are not considered part of the section titles.
! 2470: <P>
! 2471:
! 2472: <LI>
! 2473: Delete any section Entitled "Endorsements". Such a section
! 2474: may not be included in the Modified Version.
! 2475: <P>
! 2476:
! 2477: <LI>
! 2478: Do not retitle any existing section to be Entitled "Endorsements" or
! 2479: to conflict in title with any Invariant Section.
! 2480: <P>
! 2481:
! 2482: <LI>
! 2483: Preserve any Warranty Disclaimers.
! 2484: </OL>
! 2485: <P>
! 2486:
! 2487: If the Modified Version includes new front-matter sections or
! 2488: appendices that qualify as Secondary Sections and contain no material
! 2489: copied from the Document, you may at your option designate some or all
! 2490: of these sections as invariant. To do this, add their titles to the
! 2491: list of Invariant Sections in the Modified Version's license notice.
! 2492: These titles must be distinct from any other section titles.
! 2493: </P><P>
! 2494:
! 2495: You may add a section Entitled "Endorsements", provided it contains
! 2496: nothing but endorsements of your Modified Version by various
! 2497: parties--for example, statements of peer review or that the text has
! 2498: been approved by an organization as the authoritative definition of a
! 2499: standard.
! 2500: </P><P>
! 2501:
! 2502: You may add a passage of up to five words as a Front-Cover Text, and a
! 2503: passage of up to 25 words as a Back-Cover Text, to the end of the list
! 2504: of Cover Texts in the Modified Version. Only one passage of
! 2505: Front-Cover Text and one of Back-Cover Text may be added by (or
! 2506: through arrangements made by) any one entity. If the Document already
! 2507: includes a cover text for the same cover, previously added by you or
! 2508: by arrangement made by the same entity you are acting on behalf of,
! 2509: you may not add another; but you may replace the old one, on explicit
! 2510: permission from the previous publisher that added the old one.
! 2511: </P><P>
! 2512:
! 2513: The author(s) and publisher(s) of the Document do not by this License
! 2514: give permission to use their names for publicity for or to assert or
! 2515: imply endorsement of any Modified Version.
! 2516: </P><P>
! 2517:
! 2518: <LI>
! 2519: COMBINING DOCUMENTS
! 2520: <P>
! 2521:
! 2522: You may combine the Document with other documents released under this
! 2523: License, under the terms defined in section 4 above for modified
! 2524: versions, provided that you include in the combination all of the
! 2525: Invariant Sections of all of the original documents, unmodified, and
! 2526: list them all as Invariant Sections of your combined work in its
! 2527: license notice, and that you preserve all their Warranty Disclaimers.
! 2528: </P><P>
! 2529:
! 2530: The combined work need only contain one copy of this License, and
! 2531: multiple identical Invariant Sections may be replaced with a single
! 2532: copy. If there are multiple Invariant Sections with the same name but
! 2533: different contents, make the title of each such section unique by
! 2534: adding at the end of it, in parentheses, the name of the original
! 2535: author or publisher of that section if known, or else a unique number.
! 2536: Make the same adjustment to the section titles in the list of
! 2537: Invariant Sections in the license notice of the combined work.
! 2538: </P><P>
! 2539:
! 2540: In the combination, you must combine any sections Entitled "History"
! 2541: in the various original documents, forming one section Entitled
! 2542: "History"; likewise combine any sections Entitled "Acknowledgements",
! 2543: and any sections Entitled "Dedications". You must delete all
! 2544: sections Entitled "Endorsements."
! 2545: </P><P>
! 2546:
! 2547: <LI>
! 2548: COLLECTIONS OF DOCUMENTS
! 2549: <P>
! 2550:
! 2551: You may make a collection consisting of the Document and other documents
! 2552: released under this License, and replace the individual copies of this
! 2553: License in the various documents with a single copy that is included in
! 2554: the collection, provided that you follow the rules of this License for
! 2555: verbatim copying of each of the documents in all other respects.
! 2556: </P><P>
! 2557:
! 2558: You may extract a single document from such a collection, and distribute
! 2559: it individually under this License, provided you insert a copy of this
! 2560: License into the extracted document, and follow this License in all
! 2561: other respects regarding verbatim copying of that document.
! 2562: </P><P>
! 2563:
! 2564: <LI>
! 2565: AGGREGATION WITH INDEPENDENT WORKS
! 2566: <P>
! 2567:
! 2568: A compilation of the Document or its derivatives with other separate
! 2569: and independent documents or works, in or on a volume of a storage or
! 2570: distribution medium, is called an "aggregate" if the copyright
! 2571: resulting from the compilation is not used to limit the legal rights
! 2572: of the compilation's users beyond what the individual works permit.
! 2573: When the Document is included in an aggregate, this License does not
! 2574: apply to the other works in the aggregate which are not themselves
! 2575: derivative works of the Document.
! 2576: </P><P>
! 2577:
! 2578: If the Cover Text requirement of section 3 is applicable to these
! 2579: copies of the Document, then if the Document is less than one half of
! 2580: the entire aggregate, the Document's Cover Texts may be placed on
! 2581: covers that bracket the Document within the aggregate, or the
! 2582: electronic equivalent of covers if the Document is in electronic form.
! 2583: Otherwise they must appear on printed covers that bracket the whole
! 2584: aggregate.
! 2585: </P><P>
! 2586:
! 2587: <LI>
! 2588: TRANSLATION
! 2589: <P>
! 2590:
! 2591: Translation is considered a kind of modification, so you may
! 2592: distribute translations of the Document under the terms of section 4.
! 2593: Replacing Invariant Sections with translations requires special
! 2594: permission from their copyright holders, but you may include
! 2595: translations of some or all Invariant Sections in addition to the
! 2596: original versions of these Invariant Sections. You may include a
! 2597: translation of this License, and all the license notices in the
! 2598: Document, and any Warranty Disclaimers, provided that you also include
! 2599: the original English version of this License and the original versions
! 2600: of those notices and disclaimers. In case of a disagreement between
! 2601: the translation and the original version of this License or a notice
! 2602: or disclaimer, the original version will prevail.
! 2603: </P><P>
! 2604:
! 2605: If a section in the Document is Entitled "Acknowledgements",
! 2606: "Dedications", or "History", the requirement (section 4) to Preserve
! 2607: its Title (section 1) will typically require changing the actual
! 2608: title.
! 2609: </P><P>
! 2610:
! 2611: <LI>
! 2612: TERMINATION
! 2613: <P>
! 2614:
! 2615: You may not copy, modify, sublicense, or distribute the Document
! 2616: except as expressly provided under this License. Any attempt
! 2617: otherwise to copy, modify, sublicense, or distribute it is void, and
! 2618: will automatically terminate your rights under this License.
! 2619: </P><P>
! 2620:
! 2621: However, if you cease all violation of this License, then your license
! 2622: from a particular copyright holder is reinstated (a) provisionally,
! 2623: unless and until the copyright holder explicitly and finally
! 2624: terminates your license, and (b) permanently, if the copyright holder
! 2625: fails to notify you of the violation by some reasonable means prior to
! 2626: 60 days after the cessation.
! 2627: </P><P>
! 2628:
! 2629: Moreover, your license from a particular copyright holder is
! 2630: reinstated permanently if the copyright holder notifies you of the
! 2631: violation by some reasonable means, this is the first time you have
! 2632: received notice of violation of this License (for any work) from that
! 2633: copyright holder, and you cure the violation prior to 30 days after
! 2634: your receipt of the notice.
! 2635: </P><P>
! 2636:
! 2637: Termination of your rights under this section does not terminate the
! 2638: licenses of parties who have received copies or rights from you under
! 2639: this License. If your rights have been terminated and not permanently
! 2640: reinstated, receipt of a copy of some or all of the same material does
! 2641: not give you any rights to use it.
! 2642: </P><P>
! 2643:
! 2644: <LI>
! 2645: FUTURE REVISIONS OF THIS LICENSE
! 2646: <P>
! 2647:
! 2648: The Free Software Foundation may publish new, revised versions
! 2649: of the GNU Free Documentation License from time to time. Such new
! 2650: versions will be similar in spirit to the present version, but may
! 2651: differ in detail to address new problems or concerns. See
! 2652: <A HREF="http://www.gnu.org/copyleft/">http://www.gnu.org/copyleft/</A>.
! 2653: </P><P>
! 2654:
! 2655: Each version of the License is given a distinguishing version number.
! 2656: If the Document specifies that a particular numbered version of this
! 2657: License "or any later version" applies to it, you have the option of
! 2658: following the terms and conditions either of that specified version or
! 2659: of any later version that has been published (not as a draft) by the
! 2660: Free Software Foundation. If the Document does not specify a version
! 2661: number of this License, you may choose any version ever published (not
! 2662: as a draft) by the Free Software Foundation. If the Document
! 2663: specifies that a proxy can decide which future versions of this
! 2664: License can be used, that proxy's public statement of acceptance of a
! 2665: version permanently authorizes you to choose that version for the
! 2666: Document.
! 2667: </P><P>
! 2668:
! 2669: <LI>
! 2670: RELICENSING
! 2671: <P>
! 2672:
! 2673: "Massive Multiauthor Collaboration Site" (or "MMC Site") means any
! 2674: World Wide Web server that publishes copyrightable works and also
! 2675: provides prominent facilities for anybody to edit those works. A
! 2676: public wiki that anybody can edit is an example of such a server. A
! 2677: "Massive Multiauthor Collaboration" (or "MMC") contained in the
! 2678: site means any set of copyrightable works thus published on the MMC
! 2679: site.
! 2680: </P><P>
! 2681:
! 2682: "CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
! 2683: license published by Creative Commons Corporation, a not-for-profit
! 2684: corporation with a principal place of business in San Francisco,
! 2685: California, as well as future copyleft versions of that license
! 2686: published by that same organization.
! 2687: </P><P>
! 2688:
! 2689: "Incorporate" means to publish or republish a Document, in whole or
! 2690: in part, as part of another Document.
! 2691: </P><P>
! 2692:
! 2693: An MMC is "eligible for relicensing" if it is licensed under this
! 2694: License, and if all works that were first published under this License
! 2695: somewhere other than this MMC, and subsequently incorporated in whole
! 2696: or in part into the MMC, (1) had no cover texts or invariant sections,
! 2697: and (2) were thus incorporated prior to November 1, 2008.
! 2698: </P><P>
! 2699:
! 2700: The operator of an MMC Site may republish an MMC contained in the site
! 2701: under CC-BY-SA on the same site at any time before August 1, 2009,
! 2702: provided the MMC is eligible for relicensing.
! 2703: </P><P>
! 2704:
! 2705: </OL>
! 2706: <P>
! 2707:
! 2708: <A NAME="SEC24"></A>
! 2709: <H2> ADDENDUM: How to use this License for your documents </H2>
! 2710: <!--docid::SEC24::-->
! 2711: <P>
! 2712:
! 2713: To use this License in a document you have written, include a copy of
! 2714: the License in the document and put the following copyright and
! 2715: license notices just after the title page:
! 2716: </P><P>
! 2717:
! 2718: <TABLE><tr><td> </td><td class=smallexample><FONT SIZE=-1><pre> Copyright (C) <VAR>year</VAR> <VAR>your name</VAR>.
! 2719: Permission is granted to copy, distribute and/or modify this document
! 2720: under the terms of the GNU Free Documentation License, Version 1.3
! 2721: or any later version published by the Free Software Foundation;
! 2722: with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
! 2723: Texts. A copy of the license is included in the section entitled ``GNU
! 2724: Free Documentation License''.
! 2725: </FONT></pre></td></tr></table></P><P>
! 2726:
! 2727: If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
! 2728: replace the "with<small>...</small>Texts." line with this:
! 2729: </P><P>
! 2730:
! 2731: <TABLE><tr><td> </td><td class=smallexample><FONT SIZE=-1><pre> with the Invariant Sections being <VAR>list their titles</VAR>, with
! 2732: the Front-Cover Texts being <VAR>list</VAR>, and with the Back-Cover Texts
! 2733: being <VAR>list</VAR>.
! 2734: </FONT></pre></td></tr></table></P><P>
! 2735:
! 2736: If you have Invariant Sections without Cover Texts, or some other
! 2737: combination of the three, merge those two alternatives to suit the
! 2738: situation.
! 2739: </P><P>
! 2740:
! 2741: If your document contains nontrivial examples of program code, we
! 2742: recommend releasing these examples in parallel under your choice of
! 2743: free software license, such as the GNU General Public License,
! 2744: to permit their use in free software.
! 2745: </P><P>
! 2746:
! 2747: <HR SIZE="6">
! 2748: <A NAME="SEC_Contents"></A>
! 2749: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 2750: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 2751: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 2752: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 2753: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 2754: </TR></TABLE>
! 2755: <H1>Table of Contents</H1>
! 2756: <UL>
! 2757: <A NAME="TOC1" HREF="rluserman.html#SEC1">1. Command Line Editing</A>
! 2758: <BR>
! 2759: <UL>
! 2760: <A NAME="TOC2" HREF="rluserman.html#SEC2">1.1 Introduction to Line Editing</A>
! 2761: <BR>
! 2762: <A NAME="TOC3" HREF="rluserman.html#SEC3">1.2 Readline Interaction</A>
! 2763: <BR>
! 2764: <UL>
! 2765: <A NAME="TOC4" HREF="rluserman.html#SEC4">1.2.1 Readline Bare Essentials</A>
! 2766: <BR>
! 2767: <A NAME="TOC5" HREF="rluserman.html#SEC5">1.2.2 Readline Movement Commands</A>
! 2768: <BR>
! 2769: <A NAME="TOC6" HREF="rluserman.html#SEC6">1.2.3 Readline Killing Commands</A>
! 2770: <BR>
! 2771: <A NAME="TOC7" HREF="rluserman.html#SEC7">1.2.4 Readline Arguments</A>
! 2772: <BR>
! 2773: <A NAME="TOC8" HREF="rluserman.html#SEC8">1.2.5 Searching for Commands in the History</A>
! 2774: <BR>
! 2775: </UL>
! 2776: <A NAME="TOC9" HREF="rluserman.html#SEC9">1.3 Readline Init File</A>
! 2777: <BR>
! 2778: <UL>
! 2779: <A NAME="TOC10" HREF="rluserman.html#SEC10">1.3.1 Readline Init File Syntax</A>
! 2780: <BR>
! 2781: <A NAME="TOC11" HREF="rluserman.html#SEC11">1.3.2 Conditional Init Constructs</A>
! 2782: <BR>
! 2783: <A NAME="TOC12" HREF="rluserman.html#SEC12">1.3.3 Sample Init File</A>
! 2784: <BR>
! 2785: </UL>
! 2786: <A NAME="TOC13" HREF="rluserman.html#SEC13">1.4 Bindable Readline Commands</A>
! 2787: <BR>
! 2788: <UL>
! 2789: <A NAME="TOC14" HREF="rluserman.html#SEC14">1.4.1 Commands For Moving</A>
! 2790: <BR>
! 2791: <A NAME="TOC15" HREF="rluserman.html#SEC15">1.4.2 Commands For Manipulating The History</A>
! 2792: <BR>
! 2793: <A NAME="TOC16" HREF="rluserman.html#SEC16">1.4.3 Commands For Changing Text</A>
! 2794: <BR>
! 2795: <A NAME="TOC17" HREF="rluserman.html#SEC17">1.4.4 Killing And Yanking</A>
! 2796: <BR>
! 2797: <A NAME="TOC18" HREF="rluserman.html#SEC18">1.4.5 Specifying Numeric Arguments</A>
! 2798: <BR>
! 2799: <A NAME="TOC19" HREF="rluserman.html#SEC19">1.4.6 Letting Readline Type For You</A>
! 2800: <BR>
! 2801: <A NAME="TOC20" HREF="rluserman.html#SEC20">1.4.7 Keyboard Macros</A>
! 2802: <BR>
! 2803: <A NAME="TOC21" HREF="rluserman.html#SEC21">1.4.8 Some Miscellaneous Commands</A>
! 2804: <BR>
! 2805: </UL>
! 2806: <A NAME="TOC22" HREF="rluserman.html#SEC22">1.5 Readline vi Mode</A>
! 2807: <BR>
! 2808: </UL>
! 2809: <A NAME="TOC23" HREF="rluserman.html#SEC23">A. GNU Free Documentation License</A>
! 2810: <BR>
! 2811: </UL>
! 2812: <HR SIZE=1>
! 2813: <A NAME="SEC_OVERVIEW"></A>
! 2814: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 2815: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 2816: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 2817: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 2818: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 2819: </TR></TABLE>
! 2820: <H1>Short Table of Contents</H1>
! 2821: <BLOCKQUOTE>
! 2822: <A NAME="TOC1" HREF="rluserman.html#SEC1">1. Command Line Editing</A>
! 2823: <BR>
! 2824: <A NAME="TOC23" HREF="rluserman.html#SEC23">A. GNU Free Documentation License</A>
! 2825: <BR>
! 2826:
! 2827: </BLOCKQUOTE>
! 2828: <HR SIZE=1>
! 2829: <A NAME="SEC_About"></A>
! 2830: <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
! 2831: <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
! 2832: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
! 2833: <TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
! 2834: <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
! 2835: </TR></TABLE>
! 2836: <H1>About this document</H1>
! 2837: This document was generated by <I>Chet Ramey</I> on <I>February, 11 2014</I>
! 2838: using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
! 2839: "><I>texi2html</I></A>
! 2840: <P></P>
! 2841: The buttons in the navigation panels have the following meaning:
! 2842: <P></P>
! 2843: <table border = "1">
! 2844: <TR>
! 2845: <TH> Button </TH>
! 2846: <TH> Name </TH>
! 2847: <TH> Go to </TH>
! 2848: <TH> From 1.2.3 go to</TH>
! 2849: </TR>
! 2850: <TR>
! 2851: <TD ALIGN="CENTER">
! 2852: [ < ] </TD>
! 2853: <TD ALIGN="CENTER">
! 2854: Back
! 2855: </TD>
! 2856: <TD>
! 2857: previous section in reading order
! 2858: </TD>
! 2859: <TD>
! 2860: 1.2.2
! 2861: </TD>
! 2862: </TR>
! 2863: <TR>
! 2864: <TD ALIGN="CENTER">
! 2865: [ > ] </TD>
! 2866: <TD ALIGN="CENTER">
! 2867: Forward
! 2868: </TD>
! 2869: <TD>
! 2870: next section in reading order
! 2871: </TD>
! 2872: <TD>
! 2873: 1.2.4
! 2874: </TD>
! 2875: </TR>
! 2876: <TR>
! 2877: <TD ALIGN="CENTER">
! 2878: [ << ] </TD>
! 2879: <TD ALIGN="CENTER">
! 2880: FastBack
! 2881: </TD>
! 2882: <TD>
! 2883: previous or up-and-previous section
! 2884: </TD>
! 2885: <TD>
! 2886: 1.1
! 2887: </TD>
! 2888: </TR>
! 2889: <TR>
! 2890: <TD ALIGN="CENTER">
! 2891: [ Up ] </TD>
! 2892: <TD ALIGN="CENTER">
! 2893: Up
! 2894: </TD>
! 2895: <TD>
! 2896: up section
! 2897: </TD>
! 2898: <TD>
! 2899: 1.2
! 2900: </TD>
! 2901: </TR>
! 2902: <TR>
! 2903: <TD ALIGN="CENTER">
! 2904: [ >> ] </TD>
! 2905: <TD ALIGN="CENTER">
! 2906: FastForward
! 2907: </TD>
! 2908: <TD>
! 2909: next or up-and-next section
! 2910: </TD>
! 2911: <TD>
! 2912: 1.3
! 2913: </TD>
! 2914: </TR>
! 2915: <TR>
! 2916: <TD ALIGN="CENTER">
! 2917: [Top] </TD>
! 2918: <TD ALIGN="CENTER">
! 2919: Top
! 2920: </TD>
! 2921: <TD>
! 2922: cover (top) of document
! 2923: </TD>
! 2924: <TD>
! 2925:
! 2926: </TD>
! 2927: </TR>
! 2928: <TR>
! 2929: <TD ALIGN="CENTER">
! 2930: [Contents] </TD>
! 2931: <TD ALIGN="CENTER">
! 2932: Contents
! 2933: </TD>
! 2934: <TD>
! 2935: table of contents
! 2936: </TD>
! 2937: <TD>
! 2938:
! 2939: </TD>
! 2940: </TR>
! 2941: <TR>
! 2942: <TD ALIGN="CENTER">
! 2943: [Index] </TD>
! 2944: <TD ALIGN="CENTER">
! 2945: Index
! 2946: </TD>
! 2947: <TD>
! 2948: concept index
! 2949: </TD>
! 2950: <TD>
! 2951:
! 2952: </TD>
! 2953: </TR>
! 2954: <TR>
! 2955: <TD ALIGN="CENTER">
! 2956: [ ? ] </TD>
! 2957: <TD ALIGN="CENTER">
! 2958: About
! 2959: </TD>
! 2960: <TD>
! 2961: this page
! 2962: </TD>
! 2963: <TD>
! 2964:
! 2965: </TD>
! 2966: </TR>
! 2967: </TABLE>
! 2968: <P></P>
! 2969: where the <STRONG> Example </STRONG> assumes that the current position
! 2970: is at <STRONG> Subsubsection One-Two-Three </STRONG> of a document of
! 2971: the following structure:
! 2972: <UL>
! 2973: <LI> 1. Section One </LI>
! 2974: <UL>
! 2975: <LI>1.1 Subsection One-One</LI>
! 2976: <UL>
! 2977: <LI> ... </LI>
! 2978: </UL>
! 2979: <LI>1.2 Subsection One-Two</LI>
! 2980: <UL>
! 2981: <LI>1.2.1 Subsubsection One-Two-One
! 2982: </LI><LI>1.2.2 Subsubsection One-Two-Two
! 2983: </LI><LI>1.2.3 Subsubsection One-Two-Three <STRONG>
! 2984: <== Current Position </STRONG>
! 2985: </LI><LI>1.2.4 Subsubsection One-Two-Four
! 2986: </LI></UL>
! 2987: <LI>1.3 Subsection One-Three</LI>
! 2988: <UL>
! 2989: <LI> ... </LI>
! 2990: </UL>
! 2991: <LI>1.4 Subsection One-Four</LI>
! 2992: </UL>
! 2993: </UL>
! 2994:
! 2995: <HR SIZE=1>
! 2996: <BR>
! 2997: <FONT SIZE="-1">
! 2998: This document was generated
! 2999: by <I>Chet Ramey</I> on <I>February, 11 2014</I>
! 3000: using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
! 3001: "><I>texi2html</I></A>
! 3002:
! 3003: </BODY>
! 3004: </HTML>
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>