components/libtecla/files/tecla.5
changeset 2008 fbb3d4972042
equal deleted inserted replaced
2007:b47782ba4540 2008:fbb3d4972042
       
     1 '\" te
       
     2 .\" Copyright (c) 2000, 2001, 2002, 2003, 2004 by Martin C. Shepherd. All Rights Reserved.
       
     3 .\" Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, provided that the above copyright notice(s) and this permission notice appear in all copies of the Software and that both the above copyright notice(s) and this permission notice appear in supporting documentation.  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.  Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization of the copyright holder.
       
     4 .\" Portions Copyright (c) 2013, 2000, Oracle and/or its affiliates. All rights reserved.
       
     5 .TH tecla 5 "20 May 2004" "SunOS 5.12" "Standards, Environments, and Macros"
       
     6 .SH NAME
       
     7 tecla, teclarc \- User interface provided by the tecla library.
       
     8 .SH DESCRIPTION
       
     9 .sp
       
    10 .LP
       
    11 This man page describes the command-line editing features that are available to users of programs that read keyboard input via the tecla library. Users of the \fBtcsh shell\fR will find the default key bindings very familiar. Users of the \fBbash\fR shell will also find it quite familiar, but with a few minor differences, most notably in how forward and backward searches through the list of historical commands are performed. There are two major editing modes, one with \fBemacs\fR-like key bindings and another with \fBvi\fR-like key bindings. By default \fBemacs\fR mode is enabled, but \fBvi\fR(1) mode can alternatively be selected via the user's configuration file. This file can also be used to change the bindings of individual keys to suit the user's preferences. By default, tab completion is provided. If the application hasn't reconfigured this to complete other types of symbols, then tab completion completes file names.
       
    12 .SS "Key Sequence Notation"
       
    13 .sp
       
    14 .LP
       
    15 In the rest of this man page, and also in all tecla configuration files, key sequences are expressed as follows.
       
    16 .sp
       
    17 .ne 2
       
    18 .mk
       
    19 .na
       
    20 \fB\fB^A\fR or \fBC-a\fR\fR
       
    21 .ad
       
    22 .RS 13n
       
    23 .rt  
       
    24 This is a 'CONTROL-A', entered by pressing the CONTROL key at the same time as the 'A' key.
       
    25 .RE
       
    26 
       
    27 .sp
       
    28 .ne 2
       
    29 .mk
       
    30 .na
       
    31 \fB\fB\eE\fR or \fBM-\fR\fR
       
    32 .ad
       
    33 .RS 13n
       
    34 .rt  
       
    35 In key sequences, both of these notations can be entered either by pressing the ESCAPE key, then the following key, or by pressing the META key at the same time as the following key. Thus the key sequence \fBM-p\fR can be typed in two ways, by pressing the ESCAPE key, followed by pressing 'P', or by pressing the META key at the same time as 'P'.
       
    36 .RE
       
    37 
       
    38 .sp
       
    39 .ne 2
       
    40 .mk
       
    41 .na
       
    42 \fBup\fR
       
    43 .ad
       
    44 .RS 13n
       
    45 .rt  
       
    46 This refers to the up-arrow key.
       
    47 .RE
       
    48 
       
    49 .sp
       
    50 .ne 2
       
    51 .mk
       
    52 .na
       
    53 \fBdown\fR
       
    54 .ad
       
    55 .RS 13n
       
    56 .rt  
       
    57 This refers to the down-arrow key.
       
    58 .RE
       
    59 
       
    60 .sp
       
    61 .ne 2
       
    62 .mk
       
    63 .na
       
    64 \fBleft\fR
       
    65 .ad
       
    66 .RS 13n
       
    67 .rt  
       
    68 This refers to the left-arrow key.
       
    69 .RE
       
    70 
       
    71 .sp
       
    72 .ne 2
       
    73 .mk
       
    74 .na
       
    75 \fBright\fR
       
    76 .ad
       
    77 .RS 13n
       
    78 .rt  
       
    79 This refers to the right-arrow key.
       
    80 .RE
       
    81 
       
    82 .sp
       
    83 .ne 2
       
    84 .mk
       
    85 .na
       
    86 \fBa\fR
       
    87 .ad
       
    88 .RS 13n
       
    89 .rt  
       
    90 This is just a normal 'A' key.
       
    91 .RE
       
    92 
       
    93 .SS "The Tecla Configuration File"
       
    94 .sp
       
    95 .LP
       
    96 By default, tecla looks for a file called \fB\&.teclarc\fR in your home directory (ie. \fB~/.teclarc\fR). If it finds this file, it reads it, interpreting each line as defining a new key binding or an editing configuration option. Since the \fBemacs\fR key-bindings are installed by default, if you want to use the non-default \fBvi\fR editing mode, the most important item to go in this file is the following line:
       
    97 .sp
       
    98 .in +2
       
    99 .nf
       
   100 edit-mode vi
       
   101 .fi
       
   102 .in -2
       
   103 
       
   104 .sp
       
   105 .LP
       
   106 This will re-configure the default bindings for \fBvi\fR-mode. The complete set of arguments that this command accepts are:
       
   107 .sp
       
   108 .ne 2
       
   109 .mk
       
   110 .na
       
   111 \fBvi\fR
       
   112 .ad
       
   113 .RS 9n
       
   114 .rt  
       
   115 Install key bindings like those of the \fBvi\fR editor.
       
   116 .RE
       
   117 
       
   118 .sp
       
   119 .ne 2
       
   120 .mk
       
   121 .na
       
   122 \fBemacs\fR
       
   123 .ad
       
   124 .RS 9n
       
   125 .rt  
       
   126 Install key bindings like those of the \fBemacs\fR editor. This is the default.
       
   127 .RE
       
   128 
       
   129 .sp
       
   130 .ne 2
       
   131 .mk
       
   132 .na
       
   133 \fBnone\fR
       
   134 .ad
       
   135 .RS 9n
       
   136 .rt  
       
   137 Use just the native line editing facilities provided by the terminal driver.
       
   138 .RE
       
   139 
       
   140 .sp
       
   141 .LP
       
   142 To prevent the terminal bell from being rung, such as when an unrecognized control-sequence is typed, place the following line in the configuration file:
       
   143 .sp
       
   144 .in +2
       
   145 .nf
       
   146 nobeep
       
   147 .fi
       
   148 .in -2
       
   149 
       
   150 .sp
       
   151 .LP
       
   152 An example of a key binding line in the configuration file is the following.
       
   153 .sp
       
   154 .in +2
       
   155 .nf
       
   156 bind M-[2~ insert-mode
       
   157 .fi
       
   158 .in -2
       
   159 
       
   160 .sp
       
   161 .LP
       
   162 On many keyboards, the above key sequence is generated when one presses the insert key, so with this key binding, one can toggle between the \fBemacs\fR-mode insert and overwrite modes by hitting one key. One could also do it by typing out the above sequence of characters one by one. As explained above, the \fBM-\fR part of this sequence can be typed either by pressing the ESCAPE key before the following key, or by pressing the META key at the same time as the following key. Thus if you had set the above key binding, and the insert key on your keyboard didn't generate the above key sequence, you could still type it in either of the following 2 ways.
       
   163 .RS +4
       
   164 .TP
       
   165 1.
       
   166 Hit the ESCAPE key momentarily, then press '[', then \&'2', then finally '~'.
       
   167 .RE
       
   168 .RS +4
       
   169 .TP
       
   170 2.
       
   171 Press the META key at the same time as pressing the \&'[' key, then press '2', then '~'.
       
   172 .RE
       
   173 .sp
       
   174 .LP
       
   175 If you set a key binding for a key sequence that is already bound to a function, the new binding overrides the old one. If in the new binding you omit the name of the new function to bind to the key sequence, the original binding becomes undefined.
       
   176 .sp
       
   177 .LP
       
   178 Starting with versions of \fBlibtecla\fR later than 1.3.3 it is now possible to bind key sequences that begin with a printable character. Previously key sequences were required to start with a CONTROL or META character.
       
   179 .sp
       
   180 .LP
       
   181 Note that the special keywords "up", "down", "left", and "right" refer to the arrow keys, and are thus not treated as key sequences. So, for example, to rebind the up and down arrow keys to use the history search mechanism instead of the simple history recall method, you could place the following in your configuration file:
       
   182 .sp
       
   183 .in +2
       
   184 .nf
       
   185 bind up history-search-backwards
       
   186 bind down history-search-backwards
       
   187 .fi
       
   188 .in -2
       
   189 
       
   190 .sp
       
   191 .LP
       
   192 To unbind an existing binding, you can do this with the bind command by omitting to name any action to rebind the key sequence to. For example, by not specifying an action function, the following command unbinds the default beginning-of-line action from the \fB^A\fR key sequence:
       
   193 .sp
       
   194 .in +2
       
   195 .nf
       
   196 bind ^A
       
   197 .fi
       
   198 .in -2
       
   199 
       
   200 .sp
       
   201 .LP
       
   202 If you create a \fB~/.teclarc\fR configuration file, but it appears to have no effect on the program, check the documentation of the program to see if the author chose a different name for this file.
       
   203 .SS "Filename and Tilde Completion"
       
   204 .sp
       
   205 .LP
       
   206 With the default key bindings, pressing the TAB key (aka. \fB^I\fR) results in tecla attempting to complete the incomplete file name that precedes the cursor. Tecla searches backwards from the cursor, looking for the start of the file name, stopping when it hits either a space or the start of the line. If more than one file has the specified prefix, then tecla completes the file name up to the point at which the ambiguous matches start to differ, then lists the possible matches.
       
   207 .sp
       
   208 .LP
       
   209 In addition to literally written file names, tecla can complete files that start with \fB~/\fR and \fB~user/\fR expressions and that contain \fB$envvar\fR expressions. In particular, if you hit TAB within an incomplete \fB~user\fR, expression, tecla will attempt to complete the username, listing any ambiguous matches.
       
   210 .sp
       
   211 .LP
       
   212 The completion binding is implemented using the \fBcpl_complete_word()\fR function, which is also available separately to users of this library. See the \fBcpl_complete_word\fR(3TECLA) man page for more details.
       
   213 .SS "Filename Expansion"
       
   214 .sp
       
   215 .LP
       
   216 With the default key bindings, pressing \fB^X*\fR causes tecla to expand the file name that precedes the cursor, replacing \fB~/\fR and \fB~user/\fR expressions with the corresponding home directories, and replacing \fB$envvar\fR expressions with the value of the specified environment variable, then if there are any wildcards, replacing the so far expanded file name with a space-separated list of the files which match the wild cards.
       
   217 .sp
       
   218 .LP
       
   219 The expansion binding is implemented using the \fBef_expand_file()\fR function. See the \fBef_expand_file\fR(3TECLA) man page for more details.
       
   220 .SS "Recalling Previously Typed Lines"
       
   221 .sp
       
   222 .LP
       
   223 Every time that a new line is entered by the user, it is appended to a list of historical input lines maintained within the \fBGetLine\fR resource object. You can traverse up and down this list using the up and down arrow keys. Alternatively, you can do the same with the \fB^P\fR, and \fB^N\fR keys, and in \fBvi\fR command mode you can alternatively use the k and j characters. Thus pressing up-arrow once, replaces the current input line with the previously entered line. Pressing up-arrow again, replaces this with the line that was entered before it, etc.. Having gone back one or more lines into the history list, one can return to newer lines by pressing down-arrow one or more times. If you do this sufficient times, you will return to the original line that you were entering when you first hit up-arrow.
       
   224 .sp
       
   225 .LP
       
   226 Note that in \fBvi\fR mode, all of the history recall functions switch the library into command mode.
       
   227 .sp
       
   228 .LP
       
   229 In \fBemacs\fR mode the \fBM-p\fR and \fBM-n\fR keys work just like the \fB^P\fR and \fB^N\fR keys, except that they skip all but those historical lines which share the prefix that precedes the cursor. In \fBvi\fR command mode the upper case 'K' and 'J' characters do the same thing, except that the string that they search for includes the character under the cursor as well as what precedes it.
       
   230 .sp
       
   231 .LP
       
   232 Thus for example, suppose that you were in \fBemacs\fR mode, and you had just entered the following list of commands in the order shown:
       
   233 .sp
       
   234 .in +2
       
   235 .nf
       
   236 ls ~/tecla/
       
   237 cd ~/tecla
       
   238 ls -l getline.c
       
   239 \fBemacs\fR ~/tecla/getline.c
       
   240 .fi
       
   241 .in -2
       
   242 
       
   243 .sp
       
   244 .LP
       
   245 If you next typed:
       
   246 .sp
       
   247 .in +2
       
   248 .nf
       
   249 ls
       
   250 .fi
       
   251 .in -2
       
   252 
       
   253 .sp
       
   254 .LP
       
   255 and then hit \fBM-p\fR, then rather than returning the previously typed \fBemacs\fR line, which doesn't start with "ls", tecla would recall the "ls -l getline.c" line. Pressing \fBM-p\fR again would recall the "ls ~/tecla/" line.
       
   256 .sp
       
   257 .LP
       
   258 Note that if the string that you are searching for, contains any of the special characters, *, ?, or '[', then it is interpretted as a pattern to be matched. Thus, cotinuing with the above example, after typing in the list of commands shown, if you then typed:
       
   259 .sp
       
   260 .in +2
       
   261 .nf
       
   262 *tecla*
       
   263 .fi
       
   264 .in -2
       
   265 
       
   266 .sp
       
   267 .LP
       
   268 and hit \fBM-p\fR, then the "\fBemacs\fR ~/tecla/getline.c" line would be recalled first, since it contains the word tecla somewhere in the line, Similarly, hitting \fBM-p\fR again, would recall the "ls ~/tecla/" line, and hitting it once more would recall the "ls ~/tecla/" line. The pattern syntax is the same as that described for file name expansion, in the \fBef_expand_file\fR(3TECLA).
       
   269 .SS "History Files"
       
   270 .sp
       
   271 .LP
       
   272 Authors of programs that use the tecla library have the option of saving historical command-lines in a file before exiting, and subsequently reading them back in from this file when the program is next started. There is no standard name for this file, since it makes sense for each application to use its own history file, so that commands from different applications don't get mixed up.
       
   273 .SS "International Character Sets"
       
   274 .sp
       
   275 .LP
       
   276 Since \fBlibtecla\fR version 1.4.0, tecla has been 8-bit clean. This means that all 8-bit characters that are printable in the user's current locale are now displayed verbatim and included in the returned input line. Assuming that the calling program correctly contains a call like the following,
       
   277 .sp
       
   278 .in +2
       
   279 .nf
       
   280 setlocale(LC_CTYPE, "");
       
   281 .fi
       
   282 .in -2
       
   283 
       
   284 .sp
       
   285 .LP
       
   286 then the current locale is determined by the first of the environment variables \fBLC_CTYPE\fR, \fBLC_ALL\fR, and \fBLANG\fR, that is found to contain a valid locale name. If none of these variables are defined, or the program neglects to call \fBsetlocale\fR, then the default C locale is used, which is US 7-bit ASCII. On most unix-like platforms, you can get a list of valid locales by typing the command:
       
   287 .sp
       
   288 .in +2
       
   289 .nf
       
   290 locale -a
       
   291 .fi
       
   292 .in -2
       
   293 
       
   294 .sp
       
   295 .LP
       
   296 at the shell prompt.
       
   297 .SS "Meta Keys and Locales"
       
   298 .sp
       
   299 .LP
       
   300 Beware that in most locales other than the default C locale, META characters become printable, and they are then no longer considered to match \fBM-c\fR style key bindings. This allows international characters to be entered with the compose key without unexpectedly triggering META key bindings. You can still invoke META bindings, since there are actually two ways to do this. For example the binding \fBM-c\fR can also be invoked by pressing the ESCAPE key momentarily, then pressing the c key, and this will work regardless of locale. Moreover, many modern terminal emulators, such as gnome's gnome-terminal's and KDE's konsole terminals, already generate escape pairs like this when you use the META key, rather than a real meta character, and other emulators usually have a way to request this behavior, so you can continue to use the META key on most systems.
       
   301 .sp
       
   302 .LP
       
   303 For example, although xterm terminal emulators generate real 8-bit meta characters by default when you use the META key, they can be configured to output the equivalent escape pair by setting their \fBEightBitInput\fR X resource to False. You can either do this by placing a line like the following in your \fB~/.Xdefaults\fR file,
       
   304 .sp
       
   305 .in +2
       
   306 .nf
       
   307 XTerm*EightBitInput: False
       
   308 .fi
       
   309 .in -2
       
   310 
       
   311 .sp
       
   312 .LP
       
   313 or by starting an \fBxterm\fR with an \fB-xrm\fR '*EightBitInput: False' command-line argument. In recent versions of xterm you can toggle this feature on and off with the 'Meta Sends Escape' option in the menu that is displayed when you press the left mouse button and the CONTROL key within an xterm window. In CDE, dtterms can be similarly coerced to generate escape pairs in place of meta characters, by setting the \fBDtterm*KshMode\fR resource to True.
       
   314 .SS "Entering International Characters"
       
   315 .sp
       
   316 .LP
       
   317 If you don't have a keyboard that generates all of the international characters that you need, there is usually a compose key that will allow you to enter special characters, or a way to create one. For example, under X windows on unix-like systems, if your keyboard doesn't have a compose key, you can designate a redundant key to serve this purpose with the xmodmap command. For example, on many PC keyboards there is a microsoft-windows key, which is otherwise useless under Linux. On a laptop, for example, the \fBxev\fR program might report that pressing this key generates keycode 115. To turn this key into a COMPOSE  key, do the following:
       
   318 .sp
       
   319 .in +2
       
   320 .nf
       
   321 xmodmap -e 'keycode 115 = Multi_key'
       
   322 .fi
       
   323 .in -2
       
   324 
       
   325 .sp
       
   326 .LP
       
   327 Type this key followed by a " character to enter an 'I' with a umlaut over it.
       
   328 .SS "The Available Key Binding Functions"
       
   329 .sp
       
   330 .LP
       
   331 The following is a list of the editing functions provided by the tecla library. The names in the leftmost column of the list can be used in configuration files to specify which function a given key or combination of keys should invoke. They are also used in the next two sections to list the default key bindings in \fBemacs\fR and \fBvi\fR modes.
       
   332 .sp
       
   333 .ne 2
       
   334 .mk
       
   335 .na
       
   336 \fBuser-interrupt\fR
       
   337 .ad
       
   338 .RS 30n
       
   339 .rt  
       
   340 Send a SIGINT signal to the parent process.
       
   341 .RE
       
   342 
       
   343 .sp
       
   344 .ne 2
       
   345 .mk
       
   346 .na
       
   347 \fBsuspend\fR
       
   348 .ad
       
   349 .RS 30n
       
   350 .rt  
       
   351 Suspend the parent process.
       
   352 .RE
       
   353 
       
   354 .sp
       
   355 .ne 2
       
   356 .mk
       
   357 .na
       
   358 \fBstop-output\fR
       
   359 .ad
       
   360 .RS 30n
       
   361 .rt  
       
   362 Pause terminal output.
       
   363 .RE
       
   364 
       
   365 .sp
       
   366 .ne 2
       
   367 .mk
       
   368 .na
       
   369 \fBstart-output\fR
       
   370 .ad
       
   371 .RS 30n
       
   372 .rt  
       
   373 Resume paused terminal output.
       
   374 .RE
       
   375 
       
   376 .sp
       
   377 .ne 2
       
   378 .mk
       
   379 .na
       
   380 \fBliteral-next\fR
       
   381 .ad
       
   382 .RS 30n
       
   383 .rt  
       
   384 Arrange for the next character to be treated as a normal character. This allows control characters to be entered.
       
   385 .RE
       
   386 
       
   387 .sp
       
   388 .ne 2
       
   389 .mk
       
   390 .na
       
   391 \fBcursor-right\fR
       
   392 .ad
       
   393 .RS 30n
       
   394 .rt  
       
   395 Move the cursor one character right.
       
   396 .RE
       
   397 
       
   398 .sp
       
   399 .ne 2
       
   400 .mk
       
   401 .na
       
   402 \fBcursor-left\fR
       
   403 .ad
       
   404 .RS 30n
       
   405 .rt  
       
   406 Move the cursor one character left.
       
   407 .RE
       
   408 
       
   409 .sp
       
   410 .ne 2
       
   411 .mk
       
   412 .na
       
   413 \fBinsert-mode\fR
       
   414 .ad
       
   415 .RS 30n
       
   416 .rt  
       
   417 Toggle between insert mode and overwrite mode.
       
   418 .RE
       
   419 
       
   420 .sp
       
   421 .ne 2
       
   422 .mk
       
   423 .na
       
   424 \fBbeginning-of-line\fR
       
   425 .ad
       
   426 .RS 30n
       
   427 .rt  
       
   428 Move the cursor to the beginning of the line.
       
   429 .RE
       
   430 
       
   431 .sp
       
   432 .ne 2
       
   433 .mk
       
   434 .na
       
   435 \fBend-of-line\fR
       
   436 .ad
       
   437 .RS 30n
       
   438 .rt  
       
   439 Move the cursor to the end of the line.
       
   440 .RE
       
   441 
       
   442 .sp
       
   443 .ne 2
       
   444 .mk
       
   445 .na
       
   446 \fBdelete-line\fR
       
   447 .ad
       
   448 .RS 30n
       
   449 .rt  
       
   450 Delete the contents of the current line.
       
   451 .RE
       
   452 
       
   453 .sp
       
   454 .ne 2
       
   455 .mk
       
   456 .na
       
   457 \fBkill-line\fR
       
   458 .ad
       
   459 .RS 30n
       
   460 .rt  
       
   461 Delete everything that follows the cursor.
       
   462 .RE
       
   463 
       
   464 .sp
       
   465 .ne 2
       
   466 .mk
       
   467 .na
       
   468 \fBbackward-kill-line\fR
       
   469 .ad
       
   470 .RS 30n
       
   471 .rt  
       
   472 Delete all characters between the cursor and the start of the line.
       
   473 .RE
       
   474 
       
   475 .sp
       
   476 .ne 2
       
   477 .mk
       
   478 .na
       
   479 \fBforward-word\fR
       
   480 .ad
       
   481 .RS 30n
       
   482 .rt  
       
   483 Move to the end of the word which follows the cursor.
       
   484 .RE
       
   485 
       
   486 .sp
       
   487 .ne 2
       
   488 .mk
       
   489 .na
       
   490 \fBforward-to-word\fR
       
   491 .ad
       
   492 .RS 30n
       
   493 .rt  
       
   494 Move the cursor to the start of the word that follows the cursor.
       
   495 .RE
       
   496 
       
   497 .sp
       
   498 .ne 2
       
   499 .mk
       
   500 .na
       
   501 \fBbackward-word\fR
       
   502 .ad
       
   503 .RS 30n
       
   504 .rt  
       
   505 Move to the start of the word which precedes the cursor.
       
   506 .RE
       
   507 
       
   508 .sp
       
   509 .ne 2
       
   510 .mk
       
   511 .na
       
   512 \fBgoto-column\fR
       
   513 .ad
       
   514 .RS 30n
       
   515 .rt  
       
   516 Move the cursor to the 1-relative column in the line specified by any preceding digit-argument sequences (see Entering Repeat Counts below).
       
   517 .RE
       
   518 
       
   519 .sp
       
   520 .ne 2
       
   521 .mk
       
   522 .na
       
   523 \fBfind-parenthesis\fR
       
   524 .ad
       
   525 .RS 30n
       
   526 .rt  
       
   527 If the cursor is currently over a parenthesis character, move it to the matching parenthesis character. If not over a parenthesis character move right to the next close parenthesis.
       
   528 .RE
       
   529 
       
   530 .sp
       
   531 .ne 2
       
   532 .mk
       
   533 .na
       
   534 \fBforward-delete-char\fR
       
   535 .ad
       
   536 .RS 30n
       
   537 .rt  
       
   538 Delete the character under the cursor.
       
   539 .RE
       
   540 
       
   541 .sp
       
   542 .ne 2
       
   543 .mk
       
   544 .na
       
   545 \fBbackward-delete-char\fR
       
   546 .ad
       
   547 .RS 30n
       
   548 .rt  
       
   549 Delete the character which precedes the cursor.
       
   550 .RE
       
   551 
       
   552 .sp
       
   553 .ne 2
       
   554 .mk
       
   555 .na
       
   556 \fBlist-or-eof\fR
       
   557 .ad
       
   558 .RS 30n
       
   559 .rt  
       
   560 This is intended for binding to \fB^D\fR. When invoked when the cursor is within the line it displays all possible completions then redisplays the line unchanged. When invoked on an empty line, it signals end-of-input (EOF) to the caller of \fBgl_get_line()\fR.
       
   561 .RE
       
   562 
       
   563 .sp
       
   564 .ne 2
       
   565 .mk
       
   566 .na
       
   567 \fBdel-char-or-list-or-eof\fR
       
   568 .ad
       
   569 .RS 30n
       
   570 .rt  
       
   571 This is intended for binding to \fB^D\fR. When invoked when the cursor is within the line it invokes forward-delete-char. When invoked at the end of the line it displays all possible completions then redisplays the line unchanged. When invoked on an empty line, it signals end-of-input (EOF) to the caller of \fBgl_get_line()\fR.
       
   572 .RE
       
   573 
       
   574 .sp
       
   575 .ne 2
       
   576 .mk
       
   577 .na
       
   578 \fBforward-delete-word\fR
       
   579 .ad
       
   580 .RS 30n
       
   581 .rt  
       
   582 Delete the word which follows the cursor.
       
   583 .RE
       
   584 
       
   585 .sp
       
   586 .ne 2
       
   587 .mk
       
   588 .na
       
   589 \fBbackward-delete-word\fR
       
   590 .ad
       
   591 .RS 30n
       
   592 .rt  
       
   593 Delete the word which precedes the cursor.
       
   594 .RE
       
   595 
       
   596 .sp
       
   597 .ne 2
       
   598 .mk
       
   599 .na
       
   600 \fBupcase-word\fR
       
   601 .ad
       
   602 .RS 30n
       
   603 .rt  
       
   604 Convert all of the characters of the word which follows the cursor, to upper case.
       
   605 .RE
       
   606 
       
   607 .sp
       
   608 .ne 2
       
   609 .mk
       
   610 .na
       
   611 \fBdowncase-word\fR
       
   612 .ad
       
   613 .RS 30n
       
   614 .rt  
       
   615 Convert all of the characters of the word which follows the cursor, to lower case.
       
   616 .RE
       
   617 
       
   618 .sp
       
   619 .ne 2
       
   620 .mk
       
   621 .na
       
   622 \fBcapitalize-word\fR
       
   623 .ad
       
   624 .RS 30n
       
   625 .rt  
       
   626 Capitalize the word which follows the cursor.
       
   627 .RE
       
   628 
       
   629 .sp
       
   630 .ne 2
       
   631 .mk
       
   632 .na
       
   633 \fBchange-case\fR
       
   634 .ad
       
   635 .RS 30n
       
   636 .rt  
       
   637 If the next character is upper case, toggle it to lower case and vice versa.
       
   638 .RE
       
   639 
       
   640 .sp
       
   641 .ne 2
       
   642 .mk
       
   643 .na
       
   644 \fBredisplay\fR
       
   645 .ad
       
   646 .RS 30n
       
   647 .rt  
       
   648 Redisplay the line.
       
   649 .RE
       
   650 
       
   651 .sp
       
   652 .ne 2
       
   653 .mk
       
   654 .na
       
   655 \fBclear-screen\fR
       
   656 .ad
       
   657 .RS 30n
       
   658 .rt  
       
   659 Clear the terminal, then redisplay the current line.
       
   660 .RE
       
   661 
       
   662 .sp
       
   663 .ne 2
       
   664 .mk
       
   665 .na
       
   666 \fBtranspose-chars\fR
       
   667 .ad
       
   668 .RS 30n
       
   669 .rt  
       
   670 Swap the character under the cursor with the character just before the cursor.
       
   671 .RE
       
   672 
       
   673 .sp
       
   674 .ne 2
       
   675 .mk
       
   676 .na
       
   677 \fBset-mark\fR
       
   678 .ad
       
   679 .RS 30n
       
   680 .rt  
       
   681 Set a mark at the position of the cursor.
       
   682 .RE
       
   683 
       
   684 .sp
       
   685 .ne 2
       
   686 .mk
       
   687 .na
       
   688 \fBexchange-point-and-mark\fR
       
   689 .ad
       
   690 .RS 30n
       
   691 .rt  
       
   692 Move the cursor to the last mark that was set, and move the mark to where the cursor used to be.
       
   693 .RE
       
   694 
       
   695 .sp
       
   696 .ne 2
       
   697 .mk
       
   698 .na
       
   699 \fBkill-region\fR
       
   700 .ad
       
   701 .RS 30n
       
   702 .rt  
       
   703 Delete the characters that lie between the last mark that was set, and the cursor.
       
   704 .RE
       
   705 
       
   706 .sp
       
   707 .ne 2
       
   708 .mk
       
   709 .na
       
   710 \fBcopy-region-as-kill\fR
       
   711 .ad
       
   712 .RS 30n
       
   713 .rt  
       
   714 Copy the text between the mark and the cursor to the cut buffer, without deleting the original text.
       
   715 .RE
       
   716 
       
   717 .sp
       
   718 .ne 2
       
   719 .mk
       
   720 .na
       
   721 \fByank\fR
       
   722 .ad
       
   723 .RS 30n
       
   724 .rt  
       
   725 Insert the text that was last deleted, just before the current position of the cursor.
       
   726 .RE
       
   727 
       
   728 .sp
       
   729 .ne 2
       
   730 .mk
       
   731 .na
       
   732 \fBappend-yank\fR
       
   733 .ad
       
   734 .RS 30n
       
   735 .rt  
       
   736 Paste the current contents of the cut buffer, after the cursor.
       
   737 .RE
       
   738 
       
   739 .sp
       
   740 .ne 2
       
   741 .mk
       
   742 .na
       
   743 \fBup-history\fR
       
   744 .ad
       
   745 .RS 30n
       
   746 .rt  
       
   747 Recall the next oldest line that was entered. Note that in \fBvi\fR mode you are left in command mode.
       
   748 .RE
       
   749 
       
   750 .sp
       
   751 .ne 2
       
   752 .mk
       
   753 .na
       
   754 \fBdown-history\fR
       
   755 .ad
       
   756 .RS 30n
       
   757 .rt  
       
   758 Recall the next most recent line that was entered. If no history recall session is currently active, the next line from a previous recall session is recalled. Note that in vi mode you are left in command mode.
       
   759 .RE
       
   760 
       
   761 .sp
       
   762 .ne 2
       
   763 .mk
       
   764 .na
       
   765 \fBhistory-search-backward\fR
       
   766 .ad
       
   767 .RS 30n
       
   768 .rt  
       
   769 Recall the next oldest line who's prefix matches the string which currently precedes the cursor (in \fBvi\fR command-mode the character under the cursor is also included in the search string). Note that in \fBvi\fR mode you are left in command mode.
       
   770 .RE
       
   771 
       
   772 .sp
       
   773 .ne 2
       
   774 .mk
       
   775 .na
       
   776 \fBhistory-search-forward\fR
       
   777 .ad
       
   778 .RS 30n
       
   779 .rt  
       
   780 Recall the next newest line who's prefix matches the string which currently precedes the cursor (in \fBvi\fR command-mode the character under the cursor is also included in the search string). Note that in \fBvi\fR mode you are left in command mode.
       
   781 .RE
       
   782 
       
   783 .sp
       
   784 .ne 2
       
   785 .mk
       
   786 .na
       
   787 \fBhistory-re-search-backward\fR
       
   788 .ad
       
   789 .RS 30n
       
   790 .rt  
       
   791 Recall the next oldest line who's prefix matches that established by the last invocation of either history-search-forward or history-search-backward.
       
   792 .RE
       
   793 
       
   794 .sp
       
   795 .ne 2
       
   796 .mk
       
   797 .na
       
   798 \fBhistory-re-search-forward\fR
       
   799 .ad
       
   800 .RS 30n
       
   801 .rt  
       
   802 Recall the next newest line who's prefix matches that established by the last invocation of either history-search-forward or history-search-backward.
       
   803 .RE
       
   804 
       
   805 .sp
       
   806 .ne 2
       
   807 .mk
       
   808 .na
       
   809 \fBcomplete-word\fR
       
   810 .ad
       
   811 .RS 30n
       
   812 .rt  
       
   813 Attempt to complete the incomplete word which precedes the cursor. Unless the host program has customized word completion, file name completion is attempted. In \fBvi\fR commmand mode the character under the cursor is also included in the word being completed, and you are left in \fBvi\fR insert mode.
       
   814 .RE
       
   815 
       
   816 .sp
       
   817 .ne 2
       
   818 .mk
       
   819 .na
       
   820 \fBexpand-filename\fR
       
   821 .ad
       
   822 .RS 30n
       
   823 .rt  
       
   824 Within the command line, expand wild cards, tilde expressions and dollar expressions in the file name which immediately precedes the cursor. In \fBvi\fR commmand mode the character under the cursor is also included in the file name being expanded, and you are left in \fBvi\fR insert mode.
       
   825 .RE
       
   826 
       
   827 .sp
       
   828 .ne 2
       
   829 .mk
       
   830 .na
       
   831 \fBlist-glob\fR
       
   832 .ad
       
   833 .RS 30n
       
   834 .rt  
       
   835 List any file names which match the wild-card, tilde and dollar expressions in the file name which immediately precedes the cursor, then redraw the input line unchanged.
       
   836 .RE
       
   837 
       
   838 .sp
       
   839 .ne 2
       
   840 .mk
       
   841 .na
       
   842 \fBlist-history\fR
       
   843 .ad
       
   844 .RS 30n
       
   845 .rt  
       
   846 Display the contents of the history list for the current history group. If a repeat count of \fB> 1\fR is specified, only that many of the most recent lines are displayed. See the Entering Repeat Counts section.
       
   847 .RE
       
   848 
       
   849 .sp
       
   850 .ne 2
       
   851 .mk
       
   852 .na
       
   853 \fBread-from-file\fR
       
   854 .ad
       
   855 .RS 30n
       
   856 .rt  
       
   857 Temporarily switch to reading input from the file who's name precedes the cursor.
       
   858 .RE
       
   859 
       
   860 .sp
       
   861 .ne 2
       
   862 .mk
       
   863 .na
       
   864 \fBread-init-files\fR
       
   865 .ad
       
   866 .RS 30n
       
   867 .rt  
       
   868 Re-read \fBteclarc\fR configuration files.
       
   869 .RE
       
   870 
       
   871 .sp
       
   872 .ne 2
       
   873 .mk
       
   874 .na
       
   875 \fBbeginning-of-history\fR
       
   876 .ad
       
   877 .RS 30n
       
   878 .rt  
       
   879 Move to the oldest line in the history list. Note that in \fBvi\fR mode you are left in command mode.
       
   880 .RE
       
   881 
       
   882 .sp
       
   883 .ne 2
       
   884 .mk
       
   885 .na
       
   886 \fBend-of-history\fR
       
   887 .ad
       
   888 .RS 30n
       
   889 .rt  
       
   890 Move to the newest line in the history list (ie. the current line). Note that in \fBvi\fR mode this leaves you in command mode.
       
   891 .RE
       
   892 
       
   893 .sp
       
   894 .ne 2
       
   895 .mk
       
   896 .na
       
   897 \fBdigit-argument\fR
       
   898 .ad
       
   899 .RS 30n
       
   900 .rt  
       
   901 Enter a repeat count for the next key binding function. For details, see the Entering Repeat Counts section.
       
   902 .RE
       
   903 
       
   904 .sp
       
   905 .ne 2
       
   906 .mk
       
   907 .na
       
   908 \fBnewline\fR
       
   909 .ad
       
   910 .RS 30n
       
   911 .rt  
       
   912 Terminate and return the current contents of the line, after appending a newline character. The newline character is normally \&'\en', but will be the first character of the key sequence that invoked the newline action, if this happens to be a printable character. If the action was invoked by the '\en' newline character or the \&'\er' carriage return character, the line is appended to the history buffer.
       
   913 .RE
       
   914 
       
   915 .sp
       
   916 .ne 2
       
   917 .mk
       
   918 .na
       
   919 \fBrepeat-history\fR
       
   920 .ad
       
   921 .RS 30n
       
   922 .rt  
       
   923 Return the line that is being edited, then arrange for the next most recent entry in the history buffer to be recalled when tecla is next called. Repeatedly invoking this action causes successive historical input lines to be re-executed. Note that this action is equivalent to the 'Operate' action in ksh.
       
   924 .RE
       
   925 
       
   926 .sp
       
   927 .ne 2
       
   928 .mk
       
   929 .na
       
   930 \fBring-bell\fR
       
   931 .ad
       
   932 .RS 30n
       
   933 .rt  
       
   934 Ring the terminal bell, unless the bell has been silenced via the nobeep configuration option (see The Tecla Configuration File section).
       
   935 .RE
       
   936 
       
   937 .sp
       
   938 .ne 2
       
   939 .mk
       
   940 .na
       
   941 \fBforward-copy-char\fR
       
   942 .ad
       
   943 .RS 30n
       
   944 .rt  
       
   945 Copy the next character into the cut buffer (NB. use repeat counts to copy more than one).
       
   946 .RE
       
   947 
       
   948 .sp
       
   949 .ne 2
       
   950 .mk
       
   951 .na
       
   952 \fBbackward-copy-char\fR
       
   953 .ad
       
   954 .RS 30n
       
   955 .rt  
       
   956 Copy the previous character into the cut buffer.
       
   957 .RE
       
   958 
       
   959 .sp
       
   960 .ne 2
       
   961 .mk
       
   962 .na
       
   963 \fBforward-copy-word\fR
       
   964 .ad
       
   965 .RS 30n
       
   966 .rt  
       
   967 Copy the next word into the cut buffer.
       
   968 .RE
       
   969 
       
   970 .sp
       
   971 .ne 2
       
   972 .mk
       
   973 .na
       
   974 \fBbackward-copy-word\fR
       
   975 .ad
       
   976 .RS 30n
       
   977 .rt  
       
   978 Copy the previous word into the cut buffer.
       
   979 .RE
       
   980 
       
   981 .sp
       
   982 .ne 2
       
   983 .mk
       
   984 .na
       
   985 \fBforward-find-char\fR
       
   986 .ad
       
   987 .RS 30n
       
   988 .rt  
       
   989 Move the cursor to the next occurrence of the next character that you type.
       
   990 .RE
       
   991 
       
   992 .sp
       
   993 .ne 2
       
   994 .mk
       
   995 .na
       
   996 \fBbackward-find-char\fR
       
   997 .ad
       
   998 .RS 30n
       
   999 .rt  
       
  1000 Move the cursor to the last occurrence of the next character that you type.
       
  1001 .RE
       
  1002 
       
  1003 .sp
       
  1004 .ne 2
       
  1005 .mk
       
  1006 .na
       
  1007 \fBforward-to-char\fR
       
  1008 .ad
       
  1009 .RS 30n
       
  1010 .rt  
       
  1011 Move the cursor to the character just before the next occurrence of the next character that the user types.
       
  1012 .RE
       
  1013 
       
  1014 .sp
       
  1015 .ne 2
       
  1016 .mk
       
  1017 .na
       
  1018 \fBbackward-to-char\fR
       
  1019 .ad
       
  1020 .RS 30n
       
  1021 .rt  
       
  1022 Move the cursor to the character just after the last occurrence before the cursor of the next character that the user types.
       
  1023 .RE
       
  1024 
       
  1025 .sp
       
  1026 .ne 2
       
  1027 .mk
       
  1028 .na
       
  1029 \fBrepeat-find-char\fR
       
  1030 .ad
       
  1031 .RS 30n
       
  1032 .rt  
       
  1033 Repeat the last backward-find-char, forward-find-char, backward-to-char or forward-to-char.
       
  1034 .RE
       
  1035 
       
  1036 .sp
       
  1037 .ne 2
       
  1038 .mk
       
  1039 .na
       
  1040 \fBinvert-refind-char\fR
       
  1041 .ad
       
  1042 .RS 30n
       
  1043 .rt  
       
  1044 Repeat the last backward-find-char, forward-find-char, backward-to-char, or forward-to-char in the opposite direction.
       
  1045 .RE
       
  1046 
       
  1047 .sp
       
  1048 .ne 2
       
  1049 .mk
       
  1050 .na
       
  1051 \fBdelete-to-column\fR
       
  1052 .ad
       
  1053 .RS 30n
       
  1054 .rt  
       
  1055 Delete the characters from the cursor up to the column that is specified by the repeat count.
       
  1056 .RE
       
  1057 
       
  1058 .sp
       
  1059 .ne 2
       
  1060 .mk
       
  1061 .na
       
  1062 \fBdelete-to-parenthesis\fR
       
  1063 .ad
       
  1064 .RS 30n
       
  1065 .rt  
       
  1066 Delete the characters from the cursor up to and including the matching parenthesis, or next close parenthesis.
       
  1067 .RE
       
  1068 
       
  1069 .sp
       
  1070 .ne 2
       
  1071 .mk
       
  1072 .na
       
  1073 \fBforward-delete-find\fR
       
  1074 .ad
       
  1075 .RS 30n
       
  1076 .rt  
       
  1077 Delete the characters from the cursor up to and including the following occurence of the next character typed.
       
  1078 .RE
       
  1079 
       
  1080 .sp
       
  1081 .ne 2
       
  1082 .mk
       
  1083 .na
       
  1084 \fBbackward-delete-find\fR
       
  1085 .ad
       
  1086 .RS 30n
       
  1087 .rt  
       
  1088 Delete the characters from the cursor up to and including the preceding occurence of the next character typed.
       
  1089 .RE
       
  1090 
       
  1091 .sp
       
  1092 .ne 2
       
  1093 .mk
       
  1094 .na
       
  1095 \fBforward-delete-to\fR
       
  1096 .ad
       
  1097 .RS 30n
       
  1098 .rt  
       
  1099 Delete the characters from the cursor up to, but not including, the following occurence of the next character typed.
       
  1100 .RE
       
  1101 
       
  1102 .sp
       
  1103 .ne 2
       
  1104 .mk
       
  1105 .na
       
  1106 \fBbackward-delete-to\fR
       
  1107 .ad
       
  1108 .RS 30n
       
  1109 .rt  
       
  1110 Delete the characters from the cursor up to, but not including, the preceding occurence of the next character typed.
       
  1111 .RE
       
  1112 
       
  1113 .sp
       
  1114 .ne 2
       
  1115 .mk
       
  1116 .na
       
  1117 \fBdelete-refind\fR
       
  1118 .ad
       
  1119 .RS 30n
       
  1120 .rt  
       
  1121 Repeat the last *-delete-find or *-delete-to action.
       
  1122 .RE
       
  1123 
       
  1124 .sp
       
  1125 .ne 2
       
  1126 .mk
       
  1127 .na
       
  1128 \fBdelete-invert-refind\fR
       
  1129 .ad
       
  1130 .RS 30n
       
  1131 .rt  
       
  1132 Repeat the last *-delete-find or *-delete-to action, in the opposite direction.
       
  1133 .RE
       
  1134 
       
  1135 .sp
       
  1136 .ne 2
       
  1137 .mk
       
  1138 .na
       
  1139 \fBcopy-to-column\fR
       
  1140 .ad
       
  1141 .RS 30n
       
  1142 .rt  
       
  1143 Copy the characters from the cursor up to the column that is specified by the repeat count, into the cut buffer.
       
  1144 .RE
       
  1145 
       
  1146 .sp
       
  1147 .ne 2
       
  1148 .mk
       
  1149 .na
       
  1150 \fBcopy-to-parenthesis\fR
       
  1151 .ad
       
  1152 .RS 30n
       
  1153 .rt  
       
  1154 Copy the characters from the cursor up to and including the matching parenthesis, or next close parenthesis, into the cut buffer.
       
  1155 .RE
       
  1156 
       
  1157 .sp
       
  1158 .ne 2
       
  1159 .mk
       
  1160 .na
       
  1161 \fBforward-copy-find\fR
       
  1162 .ad
       
  1163 .RS 30n
       
  1164 .rt  
       
  1165 Copy the characters from the cursor up to and including the following occurence of the next character typed, into the cut buffer.
       
  1166 .RE
       
  1167 
       
  1168 .sp
       
  1169 .ne 2
       
  1170 .mk
       
  1171 .na
       
  1172 \fBbackward-copy-find\fR
       
  1173 .ad
       
  1174 .RS 30n
       
  1175 .rt  
       
  1176 Copy the characters from the cursor up to and including the preceding occurence of the next character typed, into the cut buffer.
       
  1177 .RE
       
  1178 
       
  1179 .sp
       
  1180 .ne 2
       
  1181 .mk
       
  1182 .na
       
  1183 \fBforward-copy-to\fR
       
  1184 .ad
       
  1185 .RS 30n
       
  1186 .rt  
       
  1187 Copy the characters from the cursor up to, but not including, the following occurence of the next character typed, into the cut buffer.
       
  1188 .RE
       
  1189 
       
  1190 .sp
       
  1191 .ne 2
       
  1192 .mk
       
  1193 .na
       
  1194 \fBbackward-copy-to\fR
       
  1195 .ad
       
  1196 .RS 30n
       
  1197 .rt  
       
  1198 Copy the characters from the cursor up to, but not including, the preceding occurence of the next character typed, into the cut buffer.
       
  1199 .RE
       
  1200 
       
  1201 .sp
       
  1202 .ne 2
       
  1203 .mk
       
  1204 .na
       
  1205 \fBcopy-refind\fR
       
  1206 .ad
       
  1207 .RS 30n
       
  1208 .rt  
       
  1209 Repeat the last *-copy-find or *-copy-to action.
       
  1210 .RE
       
  1211 
       
  1212 .sp
       
  1213 .ne 2
       
  1214 .mk
       
  1215 .na
       
  1216 \fBcopy-invert-refind\fR
       
  1217 .ad
       
  1218 .RS 30n
       
  1219 .rt  
       
  1220 Repeat the last *-copy-find or *-copy-to action, in the opposite direction.
       
  1221 .RE
       
  1222 
       
  1223 .sp
       
  1224 .ne 2
       
  1225 .mk
       
  1226 .na
       
  1227 \fBvi-mode\fR
       
  1228 .ad
       
  1229 .RS 30n
       
  1230 .rt  
       
  1231 Switch to \fBvi\fR mode from emacs mode.
       
  1232 .RE
       
  1233 
       
  1234 .sp
       
  1235 .ne 2
       
  1236 .mk
       
  1237 .na
       
  1238 \fBemacs-mode\fR
       
  1239 .ad
       
  1240 .RS 30n
       
  1241 .rt  
       
  1242 Switch to \fBemacs\fR mode from \fBvi\fR mode.
       
  1243 .RE
       
  1244 
       
  1245 .sp
       
  1246 .ne 2
       
  1247 .mk
       
  1248 .na
       
  1249 \fBvi-insert\fR
       
  1250 .ad
       
  1251 .RS 30n
       
  1252 .rt  
       
  1253 From \fBvi\fR command mode, switch to insert mode.
       
  1254 .RE
       
  1255 
       
  1256 .sp
       
  1257 .ne 2
       
  1258 .mk
       
  1259 .na
       
  1260 \fBvi-overwrite\fR
       
  1261 .ad
       
  1262 .RS 30n
       
  1263 .rt  
       
  1264 From \fBvi\fR command mode, switch to overwrite mode.
       
  1265 .RE
       
  1266 
       
  1267 .sp
       
  1268 .ne 2
       
  1269 .mk
       
  1270 .na
       
  1271 \fBvi-insert-at-bol\fR
       
  1272 .ad
       
  1273 .RS 30n
       
  1274 .rt  
       
  1275 From \fBvi\fR command mode, move the cursor to the start of the line and switch to insert mode.
       
  1276 .RE
       
  1277 
       
  1278 .sp
       
  1279 .ne 2
       
  1280 .mk
       
  1281 .na
       
  1282 \fBvi-append-at-eol\fR
       
  1283 .ad
       
  1284 .RS 30n
       
  1285 .rt  
       
  1286 From \fBvi\fR command mode, move the cursor to the end of the line and switch to append mode.
       
  1287 .RE
       
  1288 
       
  1289 .sp
       
  1290 .ne 2
       
  1291 .mk
       
  1292 .na
       
  1293 \fBvi-append\fR
       
  1294 .ad
       
  1295 .RS 30n
       
  1296 .rt  
       
  1297 From \fBvi\fR command mode, move the cursor one position right, and switch to insert mode.
       
  1298 .RE
       
  1299 
       
  1300 .sp
       
  1301 .ne 2
       
  1302 .mk
       
  1303 .na
       
  1304 \fBvi-replace-char\fR
       
  1305 .ad
       
  1306 .RS 30n
       
  1307 .rt  
       
  1308 From \fBvi\fR command mode, replace the character under the cursor with the next character entered.
       
  1309 .RE
       
  1310 
       
  1311 .sp
       
  1312 .ne 2
       
  1313 .mk
       
  1314 .na
       
  1315 \fBvi-forward-change-char\fR
       
  1316 .ad
       
  1317 .RS 30n
       
  1318 .rt  
       
  1319 From \fBvi\fR command mode, delete the next character then enter insert mode.
       
  1320 .RE
       
  1321 
       
  1322 .sp
       
  1323 .ne 2
       
  1324 .mk
       
  1325 .na
       
  1326 \fBvi-backward-change-char\fR
       
  1327 .ad
       
  1328 .RS 30n
       
  1329 .rt  
       
  1330 From vi command mode, delete the preceding character then enter insert mode.
       
  1331 .RE
       
  1332 
       
  1333 .sp
       
  1334 .ne 2
       
  1335 .mk
       
  1336 .na
       
  1337 \fBvi-forward-change-word\fR
       
  1338 .ad
       
  1339 .RS 30n
       
  1340 .rt  
       
  1341 From \fBvi\fR command mode, delete the next word then enter insert mode.
       
  1342 .RE
       
  1343 
       
  1344 .sp
       
  1345 .ne 2
       
  1346 .mk
       
  1347 .na
       
  1348 \fBvi-backward-change-word\fR
       
  1349 .ad
       
  1350 .RS 30n
       
  1351 .rt  
       
  1352 From vi command mode, delete the preceding word then enter insert mode.
       
  1353 .RE
       
  1354 
       
  1355 .sp
       
  1356 .ne 2
       
  1357 .mk
       
  1358 .na
       
  1359 \fBvi-change-rest-of-line\fR
       
  1360 .ad
       
  1361 .RS 30n
       
  1362 .rt  
       
  1363 From \fBvi\fR command mode, delete from the cursor to the end of the line, then enter insert mode.
       
  1364 .RE
       
  1365 
       
  1366 .sp
       
  1367 .ne 2
       
  1368 .mk
       
  1369 .na
       
  1370 \fBvi-change-line\fR
       
  1371 .ad
       
  1372 .RS 30n
       
  1373 .rt  
       
  1374 From \fBvi\fR command mode, delete the current line, then enter insert mode.
       
  1375 .RE
       
  1376 
       
  1377 .sp
       
  1378 .ne 2
       
  1379 .mk
       
  1380 .na
       
  1381 \fBvi-change-to-bol\fR
       
  1382 .ad
       
  1383 .RS 30n
       
  1384 .rt  
       
  1385 From \fBvi\fR command mode, delete all characters between the cursor and the beginning of the line, then enter insert mode.
       
  1386 .RE
       
  1387 
       
  1388 .sp
       
  1389 .ne 2
       
  1390 .mk
       
  1391 .na
       
  1392 \fBvi-change-to-column\fR
       
  1393 .ad
       
  1394 .RS 30n
       
  1395 .rt  
       
  1396 From \fBvi\fR command mode, delete the characters from the cursor up to the column that is specified by the repeat count, then enter insert mode.
       
  1397 .RE
       
  1398 
       
  1399 .sp
       
  1400 .ne 2
       
  1401 .mk
       
  1402 .na
       
  1403 \fBvi-change-to-parenthesis\fR
       
  1404 .ad
       
  1405 .RS 30n
       
  1406 .rt  
       
  1407 Delete the characters from the cursor up to and including the matching parenthesis, or next close parenthesis, then enter \fBvi\fR insert mode.
       
  1408 .RE
       
  1409 
       
  1410 .sp
       
  1411 .ne 2
       
  1412 .mk
       
  1413 .na
       
  1414 \fBvi-forward-change-find\fR
       
  1415 .ad
       
  1416 .RS 30n
       
  1417 .rt  
       
  1418 From \fBvi\fR command mode, delete the characters from the cursor up to and including the following occurence of the next character typed, then enter insert mode.
       
  1419 .RE
       
  1420 
       
  1421 .sp
       
  1422 .ne 2
       
  1423 .mk
       
  1424 .na
       
  1425 \fBvi-backward-change-find\fR
       
  1426 .ad
       
  1427 .RS 30n
       
  1428 .rt  
       
  1429 From vi command mode, delete the characters from the cursor up to and including the preceding occurence of the next character typed, then enter insert mode.
       
  1430 .RE
       
  1431 
       
  1432 .sp
       
  1433 .ne 2
       
  1434 .mk
       
  1435 .na
       
  1436 \fBvi-forward-change-to\fR
       
  1437 .ad
       
  1438 .RS 30n
       
  1439 .rt  
       
  1440 From \fBvi\fR command mode, delete the characters from the cursor up to, but not including, the following occurence of the next character typed, then enter insert mode.
       
  1441 .RE
       
  1442 
       
  1443 .sp
       
  1444 .ne 2
       
  1445 .mk
       
  1446 .na
       
  1447 \fBvi-backward-change-to\fR
       
  1448 .ad
       
  1449 .RS 30n
       
  1450 .rt  
       
  1451 From \fBvi\fR command mode, delete the characters from the cursor up to, but not including, the preceding occurence of the next character typed, then enter insert mode.
       
  1452 .RE
       
  1453 
       
  1454 .sp
       
  1455 .ne 2
       
  1456 .mk
       
  1457 .na
       
  1458 \fBvi-change-refind\fR
       
  1459 .ad
       
  1460 .RS 30n
       
  1461 .rt  
       
  1462 Repeat the last vi-*-change-find or vi-*-change-to action.
       
  1463 .RE
       
  1464 
       
  1465 .sp
       
  1466 .ne 2
       
  1467 .mk
       
  1468 .na
       
  1469 \fBvi-change-invert-refind\fR
       
  1470 .ad
       
  1471 .RS 30n
       
  1472 .rt  
       
  1473 Repeat the last vi-*-change-find or vi-*-change-to action, in the opposite direction.
       
  1474 .RE
       
  1475 
       
  1476 .sp
       
  1477 .ne 2
       
  1478 .mk
       
  1479 .na
       
  1480 \fBvi-undo\fR
       
  1481 .ad
       
  1482 .RS 30n
       
  1483 .rt  
       
  1484 In \fBvi\fR mode, undo the last editing operation.
       
  1485 .RE
       
  1486 
       
  1487 .sp
       
  1488 .ne 2
       
  1489 .mk
       
  1490 .na
       
  1491 \fBvi-repeat-change\fR
       
  1492 .ad
       
  1493 .RS 30n
       
  1494 .rt  
       
  1495 In \fBvi\fR command mode, repeat the last command that modified the line.
       
  1496 .RE
       
  1497 
       
  1498 .SS "Default Key Bindings In \fBemacs\fR Mode"
       
  1499 .sp
       
  1500 .LP
       
  1501 The following default key bindings, which can be overriden by the tecla configuration file, are designed to mimic most of the bindings of the unix \fBtcsh shell\fR shell, when it is in \fBemacs\fR editing mode.
       
  1502 .sp
       
  1503 .LP
       
  1504 This is the default editing mode of the tecla library.
       
  1505 .sp
       
  1506 .LP
       
  1507 Under UNIX the terminal driver sets a number of special keys for certain functions. The tecla library attempts to use the same key bindings to maintain consistency. The key sequences shown for the following 6 bindings are thus just examples of what they will probably be set to. If you have used the stty command to change these keys, then the default bindings should match.
       
  1508 .sp
       
  1509 .ne 2
       
  1510 .mk
       
  1511 .na
       
  1512 \fB\fB^C\fR\fR
       
  1513 .ad
       
  1514 .RS 16n
       
  1515 .rt  
       
  1516 user-interrupt
       
  1517 .RE
       
  1518 
       
  1519 .sp
       
  1520 .ne 2
       
  1521 .mk
       
  1522 .na
       
  1523 \fB\fB^<\eliteral>\fR\fR
       
  1524 .ad
       
  1525 .RS 16n
       
  1526 .rt  
       
  1527 abort
       
  1528 .RE
       
  1529 
       
  1530 .sp
       
  1531 .ne 2
       
  1532 .mk
       
  1533 .na
       
  1534 \fB\fB^Z\fR\fR
       
  1535 .ad
       
  1536 .RS 16n
       
  1537 .rt  
       
  1538 suspend
       
  1539 .RE
       
  1540 
       
  1541 .sp
       
  1542 .ne 2
       
  1543 .mk
       
  1544 .na
       
  1545 \fB\fB^Q\fR\fR
       
  1546 .ad
       
  1547 .RS 16n
       
  1548 .rt  
       
  1549 start-output
       
  1550 .RE
       
  1551 
       
  1552 .sp
       
  1553 .ne 2
       
  1554 .mk
       
  1555 .na
       
  1556 \fB\fB^S\fR\fR
       
  1557 .ad
       
  1558 .RS 16n
       
  1559 .rt  
       
  1560 stop-output
       
  1561 .RE
       
  1562 
       
  1563 .sp
       
  1564 .ne 2
       
  1565 .mk
       
  1566 .na
       
  1567 \fB\fB^V\fR\fR
       
  1568 .ad
       
  1569 .RS 16n
       
  1570 .rt  
       
  1571 literal-next
       
  1572 .RE
       
  1573 
       
  1574 .sp
       
  1575 .LP
       
  1576 The cursor keys are refered to by name, as follows. This is necessary because different types of terminals generate different key sequences when their cursor keys are pressed.
       
  1577 .sp
       
  1578 .ne 2
       
  1579 .mk
       
  1580 .na
       
  1581 \fBright\fR
       
  1582 .ad
       
  1583 .RS 9n
       
  1584 .rt  
       
  1585 cursor-right
       
  1586 .RE
       
  1587 
       
  1588 .sp
       
  1589 .ne 2
       
  1590 .mk
       
  1591 .na
       
  1592 \fBleft\fR
       
  1593 .ad
       
  1594 .RS 9n
       
  1595 .rt  
       
  1596 cursor-left
       
  1597 .RE
       
  1598 
       
  1599 .sp
       
  1600 .ne 2
       
  1601 .mk
       
  1602 .na
       
  1603 \fBup\fR
       
  1604 .ad
       
  1605 .RS 9n
       
  1606 .rt  
       
  1607 up-history
       
  1608 .RE
       
  1609 
       
  1610 .sp
       
  1611 .ne 2
       
  1612 .mk
       
  1613 .na
       
  1614 \fBdown\fR
       
  1615 .ad
       
  1616 .RS 9n
       
  1617 .rt  
       
  1618 down-history
       
  1619 .RE
       
  1620 
       
  1621 .sp
       
  1622 .LP
       
  1623 The remaining bindings don't depend on the terminal setttings.
       
  1624 .sp
       
  1625 .ne 2
       
  1626 .mk
       
  1627 .na
       
  1628 \fB\fB^F\fR\fR
       
  1629 .ad
       
  1630 .RS 21n
       
  1631 .rt  
       
  1632 cursor-right
       
  1633 .RE
       
  1634 
       
  1635 .sp
       
  1636 .ne 2
       
  1637 .mk
       
  1638 .na
       
  1639 \fB\fB^B\fR\fR
       
  1640 .ad
       
  1641 .RS 21n
       
  1642 .rt  
       
  1643 cursor-left
       
  1644 .RE
       
  1645 
       
  1646 .sp
       
  1647 .ne 2
       
  1648 .mk
       
  1649 .na
       
  1650 \fB\fBM-i\fR\fR
       
  1651 .ad
       
  1652 .RS 21n
       
  1653 .rt  
       
  1654 insert-mode
       
  1655 .RE
       
  1656 
       
  1657 .sp
       
  1658 .ne 2
       
  1659 .mk
       
  1660 .na
       
  1661 \fB\fB^A\fR\fR
       
  1662 .ad
       
  1663 .RS 21n
       
  1664 .rt  
       
  1665 beginning-of-line
       
  1666 .RE
       
  1667 
       
  1668 .sp
       
  1669 .ne 2
       
  1670 .mk
       
  1671 .na
       
  1672 \fB\fB^E\fR\fR
       
  1673 .ad
       
  1674 .RS 21n
       
  1675 .rt  
       
  1676 end-of-line
       
  1677 .RE
       
  1678 
       
  1679 .sp
       
  1680 .ne 2
       
  1681 .mk
       
  1682 .na
       
  1683 \fB\fB^U\fR\fR
       
  1684 .ad
       
  1685 .RS 21n
       
  1686 .rt  
       
  1687 delete-line
       
  1688 .RE
       
  1689 
       
  1690 .sp
       
  1691 .ne 2
       
  1692 .mk
       
  1693 .na
       
  1694 \fB\fB^K\fR\fR
       
  1695 .ad
       
  1696 .RS 21n
       
  1697 .rt  
       
  1698 kill-line
       
  1699 .RE
       
  1700 
       
  1701 .sp
       
  1702 .ne 2
       
  1703 .mk
       
  1704 .na
       
  1705 \fB\fBM-f\fR\fR
       
  1706 .ad
       
  1707 .RS 21n
       
  1708 .rt  
       
  1709 forward-word
       
  1710 .RE
       
  1711 
       
  1712 .sp
       
  1713 .ne 2
       
  1714 .mk
       
  1715 .na
       
  1716 \fB\fBM-b\fR\fR
       
  1717 .ad
       
  1718 .RS 21n
       
  1719 .rt  
       
  1720 backward-word
       
  1721 .RE
       
  1722 
       
  1723 .sp
       
  1724 .ne 2
       
  1725 .mk
       
  1726 .na
       
  1727 \fB\fB^D\fR\fR
       
  1728 .ad
       
  1729 .RS 21n
       
  1730 .rt  
       
  1731 del-char-or-list-or-eof
       
  1732 .RE
       
  1733 
       
  1734 .sp
       
  1735 .ne 2
       
  1736 .mk
       
  1737 .na
       
  1738 \fB\fB^H\fR\fR
       
  1739 .ad
       
  1740 .RS 21n
       
  1741 .rt  
       
  1742 backward-delete-char
       
  1743 .RE
       
  1744 
       
  1745 .sp
       
  1746 .ne 2
       
  1747 .mk
       
  1748 .na
       
  1749 \fB\fB^?\fR\fR
       
  1750 .ad
       
  1751 .RS 21n
       
  1752 .rt  
       
  1753 backward-delete-char
       
  1754 .RE
       
  1755 
       
  1756 .sp
       
  1757 .ne 2
       
  1758 .mk
       
  1759 .na
       
  1760 \fB\fBM-d\fR\fR
       
  1761 .ad
       
  1762 .RS 21n
       
  1763 .rt  
       
  1764 forward-delete-word
       
  1765 .RE
       
  1766 
       
  1767 .sp
       
  1768 .ne 2
       
  1769 .mk
       
  1770 .na
       
  1771 \fB\fBM-^H\fR\fR
       
  1772 .ad
       
  1773 .RS 21n
       
  1774 .rt  
       
  1775 backward-delete-word
       
  1776 .RE
       
  1777 
       
  1778 .sp
       
  1779 .ne 2
       
  1780 .mk
       
  1781 .na
       
  1782 \fB\fBM-^?\fR\fR
       
  1783 .ad
       
  1784 .RS 21n
       
  1785 .rt  
       
  1786 backward-delete-word
       
  1787 .RE
       
  1788 
       
  1789 .sp
       
  1790 .ne 2
       
  1791 .mk
       
  1792 .na
       
  1793 \fB\fBM-u\fR\fR
       
  1794 .ad
       
  1795 .RS 21n
       
  1796 .rt  
       
  1797 upcase-word
       
  1798 .RE
       
  1799 
       
  1800 .sp
       
  1801 .ne 2
       
  1802 .mk
       
  1803 .na
       
  1804 \fB\fBM-l\fR\fR
       
  1805 .ad
       
  1806 .RS 21n
       
  1807 .rt  
       
  1808 downcase-word
       
  1809 .RE
       
  1810 
       
  1811 .sp
       
  1812 .ne 2
       
  1813 .mk
       
  1814 .na
       
  1815 \fB\fBM-c\fR\fR
       
  1816 .ad
       
  1817 .RS 21n
       
  1818 .rt  
       
  1819 capitalize-word
       
  1820 .RE
       
  1821 
       
  1822 .sp
       
  1823 .ne 2
       
  1824 .mk
       
  1825 .na
       
  1826 \fB\fB^R\fR\fR
       
  1827 .ad
       
  1828 .RS 21n
       
  1829 .rt  
       
  1830 redisplay
       
  1831 .RE
       
  1832 
       
  1833 .sp
       
  1834 .ne 2
       
  1835 .mk
       
  1836 .na
       
  1837 \fB\fB^L\fR\fR
       
  1838 .ad
       
  1839 .RS 21n
       
  1840 .rt  
       
  1841 clear-screen
       
  1842 .RE
       
  1843 
       
  1844 .sp
       
  1845 .ne 2
       
  1846 .mk
       
  1847 .na
       
  1848 \fB\fB^T\fR\fR
       
  1849 .ad
       
  1850 .RS 21n
       
  1851 .rt  
       
  1852 transpose-chars
       
  1853 .RE
       
  1854 
       
  1855 .sp
       
  1856 .ne 2
       
  1857 .mk
       
  1858 .na
       
  1859 \fB\fB^@\fR\fR
       
  1860 .ad
       
  1861 .RS 21n
       
  1862 .rt  
       
  1863 set-mark
       
  1864 .RE
       
  1865 
       
  1866 .sp
       
  1867 .ne 2
       
  1868 .mk
       
  1869 .na
       
  1870 \fB\fB^X^X\fR\fR
       
  1871 .ad
       
  1872 .RS 21n
       
  1873 .rt  
       
  1874 exchange-point-and-mark
       
  1875 .RE
       
  1876 
       
  1877 .sp
       
  1878 .ne 2
       
  1879 .mk
       
  1880 .na
       
  1881 \fB\fB^W\fR\fR
       
  1882 .ad
       
  1883 .RS 21n
       
  1884 .rt  
       
  1885 kill-region
       
  1886 .RE
       
  1887 
       
  1888 .sp
       
  1889 .ne 2
       
  1890 .mk
       
  1891 .na
       
  1892 \fB\fBM-w\fR\fR
       
  1893 .ad
       
  1894 .RS 21n
       
  1895 .rt  
       
  1896 copy-region-as-kill
       
  1897 .RE
       
  1898 
       
  1899 .sp
       
  1900 .ne 2
       
  1901 .mk
       
  1902 .na
       
  1903 \fB\fB^Y\fR\fR
       
  1904 .ad
       
  1905 .RS 21n
       
  1906 .rt  
       
  1907 yank
       
  1908 .RE
       
  1909 
       
  1910 .sp
       
  1911 .ne 2
       
  1912 .mk
       
  1913 .na
       
  1914 \fB\fB^P\fR\fR
       
  1915 .ad
       
  1916 .RS 21n
       
  1917 .rt  
       
  1918 up-history
       
  1919 .RE
       
  1920 
       
  1921 .sp
       
  1922 .ne 2
       
  1923 .mk
       
  1924 .na
       
  1925 \fB\fB^N\fR\fR
       
  1926 .ad
       
  1927 .RS 21n
       
  1928 .rt  
       
  1929 down-history
       
  1930 .RE
       
  1931 
       
  1932 .sp
       
  1933 .ne 2
       
  1934 .mk
       
  1935 .na
       
  1936 \fB\fBM-p\fR\fR
       
  1937 .ad
       
  1938 .RS 21n
       
  1939 .rt  
       
  1940 history-search-backward
       
  1941 .RE
       
  1942 
       
  1943 .sp
       
  1944 .ne 2
       
  1945 .mk
       
  1946 .na
       
  1947 \fB\fBM-n\fR\fR
       
  1948 .ad
       
  1949 .RS 21n
       
  1950 .rt  
       
  1951 history-search-forward
       
  1952 .RE
       
  1953 
       
  1954 .sp
       
  1955 .ne 2
       
  1956 .mk
       
  1957 .na
       
  1958 \fB\fB^I\fR\fR
       
  1959 .ad
       
  1960 .RS 21n
       
  1961 .rt  
       
  1962 complete-word
       
  1963 .RE
       
  1964 
       
  1965 .sp
       
  1966 .ne 2
       
  1967 .mk
       
  1968 .na
       
  1969 \fB\fB^X*\fR\fR
       
  1970 .ad
       
  1971 .RS 21n
       
  1972 .rt  
       
  1973 expand-filename
       
  1974 .RE
       
  1975 
       
  1976 .sp
       
  1977 .ne 2
       
  1978 .mk
       
  1979 .na
       
  1980 \fB\fB^X^F\fR\fR
       
  1981 .ad
       
  1982 .RS 21n
       
  1983 .rt  
       
  1984 read-from-file
       
  1985 .RE
       
  1986 
       
  1987 .sp
       
  1988 .ne 2
       
  1989 .mk
       
  1990 .na
       
  1991 \fB\fB^X^R\fR\fR
       
  1992 .ad
       
  1993 .RS 21n
       
  1994 .rt  
       
  1995 read-init-files
       
  1996 .RE
       
  1997 
       
  1998 .sp
       
  1999 .ne 2
       
  2000 .mk
       
  2001 .na
       
  2002 \fB\fB^Xg\fR\fR
       
  2003 .ad
       
  2004 .RS 21n
       
  2005 .rt  
       
  2006 list-glob
       
  2007 .RE
       
  2008 
       
  2009 .sp
       
  2010 .ne 2
       
  2011 .mk
       
  2012 .na
       
  2013 \fB\fB^Xh\fR\fR
       
  2014 .ad
       
  2015 .RS 21n
       
  2016 .rt  
       
  2017 list-history
       
  2018 .RE
       
  2019 
       
  2020 .sp
       
  2021 .ne 2
       
  2022 .mk
       
  2023 .na
       
  2024 \fB\fBM-<\fR\fR
       
  2025 .ad
       
  2026 .RS 21n
       
  2027 .rt  
       
  2028 beginning-of-history
       
  2029 .RE
       
  2030 
       
  2031 .sp
       
  2032 .ne 2
       
  2033 .mk
       
  2034 .na
       
  2035 \fB\fBM->\fR\fR
       
  2036 .ad
       
  2037 .RS 21n
       
  2038 .rt  
       
  2039 end-of-history
       
  2040 .RE
       
  2041 
       
  2042 .sp
       
  2043 .ne 2
       
  2044 .mk
       
  2045 .na
       
  2046 \fB\fB\en\fR\fR
       
  2047 .ad
       
  2048 .RS 21n
       
  2049 .rt  
       
  2050 newline
       
  2051 .RE
       
  2052 
       
  2053 .sp
       
  2054 .ne 2
       
  2055 .mk
       
  2056 .na
       
  2057 \fB\fB\er\fR\fR
       
  2058 .ad
       
  2059 .RS 21n
       
  2060 .rt  
       
  2061 newline
       
  2062 .RE
       
  2063 
       
  2064 .sp
       
  2065 .ne 2
       
  2066 .mk
       
  2067 .na
       
  2068 \fB\fBM-o\fR\fR
       
  2069 .ad
       
  2070 .RS 21n
       
  2071 .rt  
       
  2072 repeat-history
       
  2073 .RE
       
  2074 
       
  2075 .sp
       
  2076 .ne 2
       
  2077 .mk
       
  2078 .na
       
  2079 \fB\fBM-^V\fR\fR
       
  2080 .ad
       
  2081 .RS 21n
       
  2082 .rt  
       
  2083 \fBvi\fR-mode
       
  2084 .RE
       
  2085 
       
  2086 .sp
       
  2087 .ne 2
       
  2088 .mk
       
  2089 .na
       
  2090 \fB\fBM-0, M-1, ... M-9\fR\fR
       
  2091 .ad
       
  2092 .RS 21n
       
  2093 .rt  
       
  2094 digit-argument (see below)
       
  2095 .RE
       
  2096 
       
  2097 .sp
       
  2098 .LP
       
  2099 Note that \fB^I\fR is what the TAB key generates, and that \fB^@\fR can be generated not only by pressing the CONTROL key and the @ key simultaneously, but also by pressing the CONTROL key and the space bar at the same time.
       
  2100 .SS "Default Key Bindings in \fBvi\fR Mode"
       
  2101 .sp
       
  2102 .LP
       
  2103 The following default key bindings are designed to mimic the \fBvi\fR style of editing as closely as possible. This means that very few editing functions are provided in the initial character input mode, editing functions instead being provided by the \fBvi\fR command mode. The \fBvi\fR command mode is entered whenever the ESCAPE character is pressed, or whenever a key sequence that starts with a meta character is entered. In addition to mimicing \fBvi\fR, \fBlibtecla\fR provides bindings for tab completion, wild-card expansion of file names, and historical line recall.
       
  2104 .sp
       
  2105 .LP
       
  2106 To learn how to tell the tecla library to use \fBvi\fR mode instead of the default \fBemacs\fR editing mode, see the earlier section entitled The Tecla Configuration File.
       
  2107 .sp
       
  2108 .LP
       
  2109 Under UNIX the terminal driver sets a number of special keys for certain functions. The tecla library attempts to use the same key bindings to maintain consistency, binding them both in input mode and in command mode. The key sequences shown for the following 6 bindings are thus just examples of what they will probably be set to. If you have used the \fBstty\fR command to change these keys, then the default bindings should match.
       
  2110 .sp
       
  2111 .ne 2
       
  2112 .mk
       
  2113 .na
       
  2114 \fB\fB^C\fR\fR
       
  2115 .ad
       
  2116 .RS 17n
       
  2117 .rt  
       
  2118 user-interrupt
       
  2119 .RE
       
  2120 
       
  2121 .sp
       
  2122 .ne 2
       
  2123 .mk
       
  2124 .na
       
  2125 \fB\fB^\e\fR\fR
       
  2126 .ad
       
  2127 .RS 17n
       
  2128 .rt  
       
  2129 abort
       
  2130 .RE
       
  2131 
       
  2132 .sp
       
  2133 .ne 2
       
  2134 .mk
       
  2135 .na
       
  2136 \fB\fB^Z\fR\fR
       
  2137 .ad
       
  2138 .RS 17n
       
  2139 .rt  
       
  2140 suspend
       
  2141 .RE
       
  2142 
       
  2143 .sp
       
  2144 .ne 2
       
  2145 .mk
       
  2146 .na
       
  2147 \fB\fB^Q\fR\fR
       
  2148 .ad
       
  2149 .RS 17n
       
  2150 .rt  
       
  2151 start-output
       
  2152 .RE
       
  2153 
       
  2154 .sp
       
  2155 .ne 2
       
  2156 .mk
       
  2157 .na
       
  2158 \fB\fB^S\fR\fR
       
  2159 .ad
       
  2160 .RS 17n
       
  2161 .rt  
       
  2162 stop-output
       
  2163 .RE
       
  2164 
       
  2165 .sp
       
  2166 .ne 2
       
  2167 .mk
       
  2168 .na
       
  2169 \fB\fB^V\fR\fR
       
  2170 .ad
       
  2171 .RS 17n
       
  2172 .rt  
       
  2173 literal-next
       
  2174 .RE
       
  2175 
       
  2176 .sp
       
  2177 .ne 2
       
  2178 .mk
       
  2179 .na
       
  2180 \fB\fBM-^C\fR\fR
       
  2181 .ad
       
  2182 .RS 17n
       
  2183 .rt  
       
  2184 user-interrupt
       
  2185 .RE
       
  2186 
       
  2187 .sp
       
  2188 .ne 2
       
  2189 .mk
       
  2190 .na
       
  2191 \fB\fBM-^\eliteral>\fR\fR
       
  2192 .ad
       
  2193 .RS 17n
       
  2194 .rt  
       
  2195 abort
       
  2196 .RE
       
  2197 
       
  2198 .sp
       
  2199 .ne 2
       
  2200 .mk
       
  2201 .na
       
  2202 \fB\fBM-^Z\fR\fR
       
  2203 .ad
       
  2204 .RS 17n
       
  2205 .rt  
       
  2206 suspend
       
  2207 .RE
       
  2208 
       
  2209 .sp
       
  2210 .ne 2
       
  2211 .mk
       
  2212 .na
       
  2213 \fB\fBM-^Q\fR\fR
       
  2214 .ad
       
  2215 .RS 17n
       
  2216 .rt  
       
  2217 start-output
       
  2218 .RE
       
  2219 
       
  2220 .sp
       
  2221 .ne 2
       
  2222 .mk
       
  2223 .na
       
  2224 \fB\fBM-^S\fR\fR
       
  2225 .ad
       
  2226 .RS 17n
       
  2227 .rt  
       
  2228 stop-output
       
  2229 .RE
       
  2230 
       
  2231 .sp
       
  2232 .LP
       
  2233 Note that above, most of the bindings are defined twice, once as a raw control code like \fB^C\fR and then a second time as a META character like \fBM-^C\fR. The former is the binding for \fBvi\fR input mode, whereas the latter is the binding for \fBvi\fR command mode. Once in command mode all key sequences that the user types that they don't explicitly start with an ESCAPE or a META key, have their first key secretly converted to a META character before the key sequence is looked up in the key binding table. Thus, once in command mode, when you type the letter i, for example, the tecla library actually looks up the binding for \fBM-i\fR.
       
  2234 .sp
       
  2235 .LP
       
  2236 The cursor keys are refered to by name, as follows. This is necessary because different types of terminals generate different key sequences when their cursor keys are pressed.
       
  2237 .sp
       
  2238 .ne 2
       
  2239 .mk
       
  2240 .na
       
  2241 \fB\fBright\fR\fR
       
  2242 .ad
       
  2243 .RS 9n
       
  2244 .rt  
       
  2245 cursor-right
       
  2246 .RE
       
  2247 
       
  2248 .sp
       
  2249 .ne 2
       
  2250 .mk
       
  2251 .na
       
  2252 \fB\fBleft\fR\fR
       
  2253 .ad
       
  2254 .RS 9n
       
  2255 .rt  
       
  2256 cursor-left
       
  2257 .RE
       
  2258 
       
  2259 .sp
       
  2260 .ne 2
       
  2261 .mk
       
  2262 .na
       
  2263 \fB\fBup\fR\fR
       
  2264 .ad
       
  2265 .RS 9n
       
  2266 .rt  
       
  2267 up-history
       
  2268 .RE
       
  2269 
       
  2270 .sp
       
  2271 .ne 2
       
  2272 .mk
       
  2273 .na
       
  2274 \fB\fBdown\fR\fR
       
  2275 .ad
       
  2276 .RS 9n
       
  2277 .rt  
       
  2278 down-history
       
  2279 .RE
       
  2280 
       
  2281 .sp
       
  2282 .LP
       
  2283 The cursor keys normally generate a key sequence that start with an ESCAPE character, so beware that using the arrow keys will put you into command mode (if you aren't already in command mode).
       
  2284 .sp
       
  2285 .LP
       
  2286 The following are the terminal-independent key bindings for \fBvi\fR input mode.
       
  2287 .sp
       
  2288 .ne 2
       
  2289 .mk
       
  2290 .na
       
  2291 \fB\fB^D\fR\fR
       
  2292 .ad
       
  2293 .RS 8n
       
  2294 .rt  
       
  2295 list-or-eof
       
  2296 .RE
       
  2297 
       
  2298 .sp
       
  2299 .ne 2
       
  2300 .mk
       
  2301 .na
       
  2302 \fB\fB^G\fR\fR
       
  2303 .ad
       
  2304 .RS 8n
       
  2305 .rt  
       
  2306 list-glob
       
  2307 .RE
       
  2308 
       
  2309 .sp
       
  2310 .ne 2
       
  2311 .mk
       
  2312 .na
       
  2313 \fB\fB^H\fR\fR
       
  2314 .ad
       
  2315 .RS 8n
       
  2316 .rt  
       
  2317 backward-delete-char
       
  2318 .RE
       
  2319 
       
  2320 .sp
       
  2321 .ne 2
       
  2322 .mk
       
  2323 .na
       
  2324 \fB\fB^I\fR\fR
       
  2325 .ad
       
  2326 .RS 8n
       
  2327 .rt  
       
  2328 complete-word
       
  2329 .RE
       
  2330 
       
  2331 .sp
       
  2332 .ne 2
       
  2333 .mk
       
  2334 .na
       
  2335 \fB\fB\er\fR\fR
       
  2336 .ad
       
  2337 .RS 8n
       
  2338 .rt  
       
  2339 newline
       
  2340 .RE
       
  2341 
       
  2342 .sp
       
  2343 .ne 2
       
  2344 .mk
       
  2345 .na
       
  2346 \fB\fB\en\fR\fR
       
  2347 .ad
       
  2348 .RS 8n
       
  2349 .rt  
       
  2350 newline
       
  2351 .RE
       
  2352 
       
  2353 .sp
       
  2354 .ne 2
       
  2355 .mk
       
  2356 .na
       
  2357 \fB\fB^L\fR\fR
       
  2358 .ad
       
  2359 .RS 8n
       
  2360 .rt  
       
  2361 clear-screen
       
  2362 .RE
       
  2363 
       
  2364 .sp
       
  2365 .ne 2
       
  2366 .mk
       
  2367 .na
       
  2368 \fB\fB^N\fR\fR
       
  2369 .ad
       
  2370 .RS 8n
       
  2371 .rt  
       
  2372 down-history
       
  2373 .RE
       
  2374 
       
  2375 .sp
       
  2376 .ne 2
       
  2377 .mk
       
  2378 .na
       
  2379 \fB\fB^P\fR\fR
       
  2380 .ad
       
  2381 .RS 8n
       
  2382 .rt  
       
  2383 up-history
       
  2384 .RE
       
  2385 
       
  2386 .sp
       
  2387 .ne 2
       
  2388 .mk
       
  2389 .na
       
  2390 \fB\fB^R\fR\fR
       
  2391 .ad
       
  2392 .RS 8n
       
  2393 .rt  
       
  2394 redisplay
       
  2395 .RE
       
  2396 
       
  2397 .sp
       
  2398 .ne 2
       
  2399 .mk
       
  2400 .na
       
  2401 \fB\fB^U\fR\fR
       
  2402 .ad
       
  2403 .RS 8n
       
  2404 .rt  
       
  2405 backward-kill-line
       
  2406 .RE
       
  2407 
       
  2408 .sp
       
  2409 .ne 2
       
  2410 .mk
       
  2411 .na
       
  2412 \fB\fB^W\fR\fR
       
  2413 .ad
       
  2414 .RS 8n
       
  2415 .rt  
       
  2416 backward-delete-word
       
  2417 .RE
       
  2418 
       
  2419 .sp
       
  2420 .ne 2
       
  2421 .mk
       
  2422 .na
       
  2423 \fB\fB^X*\fR\fR
       
  2424 .ad
       
  2425 .RS 8n
       
  2426 .rt  
       
  2427 expand-filename
       
  2428 .RE
       
  2429 
       
  2430 .sp
       
  2431 .ne 2
       
  2432 .mk
       
  2433 .na
       
  2434 \fB\fB^X^F\fR\fR
       
  2435 .ad
       
  2436 .RS 8n
       
  2437 .rt  
       
  2438 read-from-file
       
  2439 .RE
       
  2440 
       
  2441 .sp
       
  2442 .ne 2
       
  2443 .mk
       
  2444 .na
       
  2445 \fB\fB^X^R\fR\fR
       
  2446 .ad
       
  2447 .RS 8n
       
  2448 .rt  
       
  2449 read-init-files
       
  2450 .RE
       
  2451 
       
  2452 .sp
       
  2453 .ne 2
       
  2454 .mk
       
  2455 .na
       
  2456 \fB\fB^?\fR\fR
       
  2457 .ad
       
  2458 .RS 8n
       
  2459 .rt  
       
  2460 backward-delete-char
       
  2461 .RE
       
  2462 
       
  2463 .sp
       
  2464 .LP
       
  2465 The following are the key bindings that are defined in \fBvi\fR command mode, this being specified by them all starting with a META character. As mentioned above, once in command mode the initial meta character is optional. For example, you might enter command mode by typing ESCAPE, and then press 'H' twice to move the cursor two positions to the left. Both 'H' characters get quietly converted to \fBM-h\fR before being compared to the key binding table, the first one because ESCAPE followed by a character is always converted to the equivalent META character, and the second because command mode was already active.
       
  2466 .sp
       
  2467 .ne 2
       
  2468 .mk
       
  2469 .na
       
  2470 \fB\fBM-\e\fR\fR
       
  2471 .ad
       
  2472 .RS 21n
       
  2473 .rt  
       
  2474 cursor-right (META-space)
       
  2475 .RE
       
  2476 
       
  2477 .sp
       
  2478 .ne 2
       
  2479 .mk
       
  2480 .na
       
  2481 \fB\fBM-$\fR\fR
       
  2482 .ad
       
  2483 .RS 21n
       
  2484 .rt  
       
  2485 end-of-line
       
  2486 .RE
       
  2487 
       
  2488 .sp
       
  2489 .ne 2
       
  2490 .mk
       
  2491 .na
       
  2492 \fB\fBM-*\fR\fR
       
  2493 .ad
       
  2494 .RS 21n
       
  2495 .rt  
       
  2496 expand-filename
       
  2497 .RE
       
  2498 
       
  2499 .sp
       
  2500 .ne 2
       
  2501 .mk
       
  2502 .na
       
  2503 \fB\fBM-+\fR\fR
       
  2504 .ad
       
  2505 .RS 21n
       
  2506 .rt  
       
  2507 down-history
       
  2508 .RE
       
  2509 
       
  2510 .sp
       
  2511 .ne 2
       
  2512 .mk
       
  2513 .na
       
  2514 \fB\fBM--\fR\fR
       
  2515 .ad
       
  2516 .RS 21n
       
  2517 .rt  
       
  2518 up-history
       
  2519 .RE
       
  2520 
       
  2521 .sp
       
  2522 .ne 2
       
  2523 .mk
       
  2524 .na
       
  2525 \fB\fBM-<\fR\fR
       
  2526 .ad
       
  2527 .RS 21n
       
  2528 .rt  
       
  2529 beginning-of-history
       
  2530 .RE
       
  2531 
       
  2532 .sp
       
  2533 .ne 2
       
  2534 .mk
       
  2535 .na
       
  2536 \fB\fBM->\fR\fR
       
  2537 .ad
       
  2538 .RS 21n
       
  2539 .rt  
       
  2540 end-of-history
       
  2541 .RE
       
  2542 
       
  2543 .sp
       
  2544 .ne 2
       
  2545 .mk
       
  2546 .na
       
  2547 \fB\fBM-^\fR\fR
       
  2548 .ad
       
  2549 .RS 21n
       
  2550 .rt  
       
  2551 beginning-of-line
       
  2552 .RE
       
  2553 
       
  2554 .sp
       
  2555 .ne 2
       
  2556 .mk
       
  2557 .na
       
  2558 \fB\fBM-\fR\fR
       
  2559 .ad
       
  2560 .RS 21n
       
  2561 .rt  
       
  2562 repeat-find-char
       
  2563 .RE
       
  2564 
       
  2565 .sp
       
  2566 .ne 2
       
  2567 .mk
       
  2568 .na
       
  2569 \fB\fBM-,\fR\fR
       
  2570 .ad
       
  2571 .RS 21n
       
  2572 .rt  
       
  2573 invert-refind-char
       
  2574 .RE
       
  2575 
       
  2576 .sp
       
  2577 .ne 2
       
  2578 .mk
       
  2579 .na
       
  2580 \fB\fBM-|\fR\fR
       
  2581 .ad
       
  2582 .RS 21n
       
  2583 .rt  
       
  2584 goto-column
       
  2585 .RE
       
  2586 
       
  2587 .sp
       
  2588 .ne 2
       
  2589 .mk
       
  2590 .na
       
  2591 \fB\fBM-~\fR\fR
       
  2592 .ad
       
  2593 .RS 21n
       
  2594 .rt  
       
  2595 change-case
       
  2596 .RE
       
  2597 
       
  2598 .sp
       
  2599 .ne 2
       
  2600 .mk
       
  2601 .na
       
  2602 \fB\fBM-.\fR\fR
       
  2603 .ad
       
  2604 .RS 21n
       
  2605 .rt  
       
  2606 vi-repeat-change
       
  2607 .RE
       
  2608 
       
  2609 .sp
       
  2610 .ne 2
       
  2611 .mk
       
  2612 .na
       
  2613 \fB\fBM-%\fR\fR
       
  2614 .ad
       
  2615 .RS 21n
       
  2616 .rt  
       
  2617 find-parenthesis
       
  2618 .RE
       
  2619 
       
  2620 .sp
       
  2621 .ne 2
       
  2622 .mk
       
  2623 .na
       
  2624 \fB\fBM-a\fR\fR
       
  2625 .ad
       
  2626 .RS 21n
       
  2627 .rt  
       
  2628 vi-append
       
  2629 .RE
       
  2630 
       
  2631 .sp
       
  2632 .ne 2
       
  2633 .mk
       
  2634 .na
       
  2635 \fB\fBM-A\fR\fR
       
  2636 .ad
       
  2637 .RS 21n
       
  2638 .rt  
       
  2639 vi-append-at-eol
       
  2640 .RE
       
  2641 
       
  2642 .sp
       
  2643 .ne 2
       
  2644 .mk
       
  2645 .na
       
  2646 \fB\fBM-b\fR\fR
       
  2647 .ad
       
  2648 .RS 21n
       
  2649 .rt  
       
  2650 backward-word
       
  2651 .RE
       
  2652 
       
  2653 .sp
       
  2654 .ne 2
       
  2655 .mk
       
  2656 .na
       
  2657 \fB\fBM-B\fR\fR
       
  2658 .ad
       
  2659 .RS 21n
       
  2660 .rt  
       
  2661 backward-word
       
  2662 .RE
       
  2663 
       
  2664 .sp
       
  2665 .ne 2
       
  2666 .mk
       
  2667 .na
       
  2668 \fB\fBM-C\fR\fR
       
  2669 .ad
       
  2670 .RS 21n
       
  2671 .rt  
       
  2672 vi-change-rest-of-line
       
  2673 .RE
       
  2674 
       
  2675 .sp
       
  2676 .ne 2
       
  2677 .mk
       
  2678 .na
       
  2679 \fB\fBM-cb\fR\fR
       
  2680 .ad
       
  2681 .RS 21n
       
  2682 .rt  
       
  2683 vi-backward-change-word
       
  2684 .RE
       
  2685 
       
  2686 .sp
       
  2687 .ne 2
       
  2688 .mk
       
  2689 .na
       
  2690 \fB\fBM-cB\fR\fR
       
  2691 .ad
       
  2692 .RS 21n
       
  2693 .rt  
       
  2694 vi-backward-change-word
       
  2695 .RE
       
  2696 
       
  2697 .sp
       
  2698 .ne 2
       
  2699 .mk
       
  2700 .na
       
  2701 \fB\fBM-cc\fR\fR
       
  2702 .ad
       
  2703 .RS 21n
       
  2704 .rt  
       
  2705 vi-change-line
       
  2706 .RE
       
  2707 
       
  2708 .sp
       
  2709 .ne 2
       
  2710 .mk
       
  2711 .na
       
  2712 \fB\fBM-ce\fR\fR
       
  2713 .ad
       
  2714 .RS 21n
       
  2715 .rt  
       
  2716 vi-forward-change-word
       
  2717 .RE
       
  2718 
       
  2719 .sp
       
  2720 .ne 2
       
  2721 .mk
       
  2722 .na
       
  2723 \fB\fBM-cE\fR\fR
       
  2724 .ad
       
  2725 .RS 21n
       
  2726 .rt  
       
  2727 vi-forward-change-word
       
  2728 .RE
       
  2729 
       
  2730 .sp
       
  2731 .ne 2
       
  2732 .mk
       
  2733 .na
       
  2734 \fB\fBM-cw\fR\fR
       
  2735 .ad
       
  2736 .RS 21n
       
  2737 .rt  
       
  2738 vi-forward-change-word
       
  2739 .RE
       
  2740 
       
  2741 .sp
       
  2742 .ne 2
       
  2743 .mk
       
  2744 .na
       
  2745 \fB\fBM-cW\fR\fR
       
  2746 .ad
       
  2747 .RS 21n
       
  2748 .rt  
       
  2749 vi-forward-change-word
       
  2750 .RE
       
  2751 
       
  2752 .sp
       
  2753 .ne 2
       
  2754 .mk
       
  2755 .na
       
  2756 \fB\fBM-cF\fR\fR
       
  2757 .ad
       
  2758 .RS 21n
       
  2759 .rt  
       
  2760 vi-backward-change-find
       
  2761 .RE
       
  2762 
       
  2763 .sp
       
  2764 .ne 2
       
  2765 .mk
       
  2766 .na
       
  2767 \fB\fBM-cf\fR\fR
       
  2768 .ad
       
  2769 .RS 21n
       
  2770 .rt  
       
  2771 vi-forward-change-find
       
  2772 .RE
       
  2773 
       
  2774 .sp
       
  2775 .ne 2
       
  2776 .mk
       
  2777 .na
       
  2778 \fB\fBM-cT\fR\fR
       
  2779 .ad
       
  2780 .RS 21n
       
  2781 .rt  
       
  2782 vi-backward-change-to
       
  2783 .RE
       
  2784 
       
  2785 .sp
       
  2786 .ne 2
       
  2787 .mk
       
  2788 .na
       
  2789 \fB\fBM-ct\fR\fR
       
  2790 .ad
       
  2791 .RS 21n
       
  2792 .rt  
       
  2793 vi-forward-change-to
       
  2794 .RE
       
  2795 
       
  2796 .sp
       
  2797 .ne 2
       
  2798 .mk
       
  2799 .na
       
  2800 \fB\fBM-c;\fR\fR
       
  2801 .ad
       
  2802 .RS 21n
       
  2803 .rt  
       
  2804 vi-change-refind
       
  2805 .RE
       
  2806 
       
  2807 .sp
       
  2808 .ne 2
       
  2809 .mk
       
  2810 .na
       
  2811 \fB\fBM-c,\fR\fR
       
  2812 .ad
       
  2813 .RS 21n
       
  2814 .rt  
       
  2815 vi-change-invert-refind
       
  2816 .RE
       
  2817 
       
  2818 .sp
       
  2819 .ne 2
       
  2820 .mk
       
  2821 .na
       
  2822 \fB\fBM-ch\fR\fR
       
  2823 .ad
       
  2824 .RS 21n
       
  2825 .rt  
       
  2826 vi-backward-change-char
       
  2827 .RE
       
  2828 
       
  2829 .sp
       
  2830 .ne 2
       
  2831 .mk
       
  2832 .na
       
  2833 \fB\fBM-c^H\fR\fR
       
  2834 .ad
       
  2835 .RS 21n
       
  2836 .rt  
       
  2837 vi-backward-change-char
       
  2838 .RE
       
  2839 
       
  2840 .sp
       
  2841 .ne 2
       
  2842 .mk
       
  2843 .na
       
  2844 \fB\fBM-c^?\fR\fR
       
  2845 .ad
       
  2846 .RS 21n
       
  2847 .rt  
       
  2848 vi-backward-change-char
       
  2849 .RE
       
  2850 
       
  2851 .sp
       
  2852 .ne 2
       
  2853 .mk
       
  2854 .na
       
  2855 \fB\fBM-cl\fR\fR
       
  2856 .ad
       
  2857 .RS 21n
       
  2858 .rt  
       
  2859 vi-forward-change-char
       
  2860 .RE
       
  2861 
       
  2862 .sp
       
  2863 .ne 2
       
  2864 .mk
       
  2865 .na
       
  2866 \fB\fBM-c\e\fR\fR
       
  2867 .ad
       
  2868 .RS 21n
       
  2869 .rt  
       
  2870 vi-forward-change-char (META-c-space)
       
  2871 .RE
       
  2872 
       
  2873 .sp
       
  2874 .ne 2
       
  2875 .mk
       
  2876 .na
       
  2877 \fB\fBM-c^\fR\fR
       
  2878 .ad
       
  2879 .RS 21n
       
  2880 .rt  
       
  2881 vi-change-to-bol
       
  2882 .RE
       
  2883 
       
  2884 .sp
       
  2885 .ne 2
       
  2886 .mk
       
  2887 .na
       
  2888 \fB\fBM-c0\fR\fR
       
  2889 .ad
       
  2890 .RS 21n
       
  2891 .rt  
       
  2892 vi-change-to-bol
       
  2893 .RE
       
  2894 
       
  2895 .sp
       
  2896 .ne 2
       
  2897 .mk
       
  2898 .na
       
  2899 \fB\fBM-c$\fR\fR
       
  2900 .ad
       
  2901 .RS 21n
       
  2902 .rt  
       
  2903 vi-change-rest-of-line
       
  2904 .RE
       
  2905 
       
  2906 .sp
       
  2907 .ne 2
       
  2908 .mk
       
  2909 .na
       
  2910 \fB\fBM-c|\fR\fR
       
  2911 .ad
       
  2912 .RS 21n
       
  2913 .rt  
       
  2914 vi-change-to-column
       
  2915 .RE
       
  2916 
       
  2917 .sp
       
  2918 .ne 2
       
  2919 .mk
       
  2920 .na
       
  2921 \fB\fBM-c%\fR\fR
       
  2922 .ad
       
  2923 .RS 21n
       
  2924 .rt  
       
  2925 vi-change-to-parenthesis
       
  2926 .RE
       
  2927 
       
  2928 .sp
       
  2929 .ne 2
       
  2930 .mk
       
  2931 .na
       
  2932 \fB\fBM-dh\fR\fR
       
  2933 .ad
       
  2934 .RS 21n
       
  2935 .rt  
       
  2936 backward-delete-char
       
  2937 .RE
       
  2938 
       
  2939 .sp
       
  2940 .ne 2
       
  2941 .mk
       
  2942 .na
       
  2943 \fB\fBM-d^H\fR\fR
       
  2944 .ad
       
  2945 .RS 21n
       
  2946 .rt  
       
  2947 backward-delete-char
       
  2948 .RE
       
  2949 
       
  2950 .sp
       
  2951 .ne 2
       
  2952 .mk
       
  2953 .na
       
  2954 \fB\fBM-d^?\fR\fR
       
  2955 .ad
       
  2956 .RS 21n
       
  2957 .rt  
       
  2958 backward-delete-char
       
  2959 .RE
       
  2960 
       
  2961 .sp
       
  2962 .ne 2
       
  2963 .mk
       
  2964 .na
       
  2965 \fB\fBM-dl\fR\fR
       
  2966 .ad
       
  2967 .RS 21n
       
  2968 .rt  
       
  2969 forward-delete-char
       
  2970 .RE
       
  2971 
       
  2972 .sp
       
  2973 .ne 2
       
  2974 .mk
       
  2975 .na
       
  2976 \fB\fBM-d\fR\fR
       
  2977 .ad
       
  2978 .RS 21n
       
  2979 .rt  
       
  2980 forward-delete-char (META-d-space)
       
  2981 .RE
       
  2982 
       
  2983 .sp
       
  2984 .ne 2
       
  2985 .mk
       
  2986 .na
       
  2987 \fB\fBM-dd\fR\fR
       
  2988 .ad
       
  2989 .RS 21n
       
  2990 .rt  
       
  2991 delete-line
       
  2992 .RE
       
  2993 
       
  2994 .sp
       
  2995 .ne 2
       
  2996 .mk
       
  2997 .na
       
  2998 \fB\fBM-db\fR\fR
       
  2999 .ad
       
  3000 .RS 21n
       
  3001 .rt  
       
  3002 backward-delete-word
       
  3003 .RE
       
  3004 
       
  3005 .sp
       
  3006 .ne 2
       
  3007 .mk
       
  3008 .na
       
  3009 \fB\fBM-dB\fR\fR
       
  3010 .ad
       
  3011 .RS 21n
       
  3012 .rt  
       
  3013 backward-delete-word
       
  3014 .RE
       
  3015 
       
  3016 .sp
       
  3017 .ne 2
       
  3018 .mk
       
  3019 .na
       
  3020 \fB\fBM-de\fR\fR
       
  3021 .ad
       
  3022 .RS 21n
       
  3023 .rt  
       
  3024 forward-delete-word
       
  3025 .RE
       
  3026 
       
  3027 .sp
       
  3028 .ne 2
       
  3029 .mk
       
  3030 .na
       
  3031 \fB\fBM-dE\fR\fR
       
  3032 .ad
       
  3033 .RS 21n
       
  3034 .rt  
       
  3035 forward-delete-word
       
  3036 .RE
       
  3037 
       
  3038 .sp
       
  3039 .ne 2
       
  3040 .mk
       
  3041 .na
       
  3042 \fB\fBM-dw\fR\fR
       
  3043 .ad
       
  3044 .RS 21n
       
  3045 .rt  
       
  3046 forward-delete-word
       
  3047 .RE
       
  3048 
       
  3049 .sp
       
  3050 .ne 2
       
  3051 .mk
       
  3052 .na
       
  3053 \fB\fBM-dW\fR\fR
       
  3054 .ad
       
  3055 .RS 21n
       
  3056 .rt  
       
  3057 forward-delete-word
       
  3058 .RE
       
  3059 
       
  3060 .sp
       
  3061 .ne 2
       
  3062 .mk
       
  3063 .na
       
  3064 \fB\fBM-dF\fR\fR
       
  3065 .ad
       
  3066 .RS 21n
       
  3067 .rt  
       
  3068 backward-delete-find
       
  3069 .RE
       
  3070 
       
  3071 .sp
       
  3072 .ne 2
       
  3073 .mk
       
  3074 .na
       
  3075 \fB\fBM-df\fR\fR
       
  3076 .ad
       
  3077 .RS 21n
       
  3078 .rt  
       
  3079 forward-delete-find
       
  3080 .RE
       
  3081 
       
  3082 .sp
       
  3083 .ne 2
       
  3084 .mk
       
  3085 .na
       
  3086 \fB\fBM-dT\fR\fR
       
  3087 .ad
       
  3088 .RS 21n
       
  3089 .rt  
       
  3090 backward-delete-to
       
  3091 .RE
       
  3092 
       
  3093 .sp
       
  3094 .ne 2
       
  3095 .mk
       
  3096 .na
       
  3097 \fB\fBM-dt\fR\fR
       
  3098 .ad
       
  3099 .RS 21n
       
  3100 .rt  
       
  3101 forward-delete-to
       
  3102 .RE
       
  3103 
       
  3104 .sp
       
  3105 .ne 2
       
  3106 .mk
       
  3107 .na
       
  3108 \fB\fBM-d;\fR\fR
       
  3109 .ad
       
  3110 .RS 21n
       
  3111 .rt  
       
  3112 delete-refind
       
  3113 .RE
       
  3114 
       
  3115 .sp
       
  3116 .ne 2
       
  3117 .mk
       
  3118 .na
       
  3119 \fB\fBM-d,\fR\fR
       
  3120 .ad
       
  3121 .RS 21n
       
  3122 .rt  
       
  3123 delete-invert-refind
       
  3124 .RE
       
  3125 
       
  3126 .sp
       
  3127 .ne 2
       
  3128 .mk
       
  3129 .na
       
  3130 \fB\fBM-d^\fR\fR
       
  3131 .ad
       
  3132 .RS 21n
       
  3133 .rt  
       
  3134 backward-kill-line
       
  3135 .RE
       
  3136 
       
  3137 .sp
       
  3138 .ne 2
       
  3139 .mk
       
  3140 .na
       
  3141 \fB\fBM-d0\fR\fR
       
  3142 .ad
       
  3143 .RS 21n
       
  3144 .rt  
       
  3145 backward-kill-line
       
  3146 .RE
       
  3147 
       
  3148 .sp
       
  3149 .ne 2
       
  3150 .mk
       
  3151 .na
       
  3152 \fB\fBM-d$\fR\fR
       
  3153 .ad
       
  3154 .RS 21n
       
  3155 .rt  
       
  3156 kill-line
       
  3157 .RE
       
  3158 
       
  3159 .sp
       
  3160 .ne 2
       
  3161 .mk
       
  3162 .na
       
  3163 \fB\fBM-D\fR\fR
       
  3164 .ad
       
  3165 .RS 21n
       
  3166 .rt  
       
  3167 kill-line
       
  3168 .RE
       
  3169 
       
  3170 .sp
       
  3171 .ne 2
       
  3172 .mk
       
  3173 .na
       
  3174 \fB\fBM-d|\fR\fR
       
  3175 .ad
       
  3176 .RS 21n
       
  3177 .rt  
       
  3178 delete-to-column
       
  3179 .RE
       
  3180 
       
  3181 .sp
       
  3182 .ne 2
       
  3183 .mk
       
  3184 .na
       
  3185 \fB\fBM-d%\fR\fR
       
  3186 .ad
       
  3187 .RS 21n
       
  3188 .rt  
       
  3189 delete-to-parenthesis
       
  3190 .RE
       
  3191 
       
  3192 .sp
       
  3193 .ne 2
       
  3194 .mk
       
  3195 .na
       
  3196 \fB\fBM-e\fR\fR
       
  3197 .ad
       
  3198 .RS 21n
       
  3199 .rt  
       
  3200 forward-word
       
  3201 .RE
       
  3202 
       
  3203 .sp
       
  3204 .ne 2
       
  3205 .mk
       
  3206 .na
       
  3207 \fB\fBM-E\fR\fR
       
  3208 .ad
       
  3209 .RS 21n
       
  3210 .rt  
       
  3211 forward-word
       
  3212 .RE
       
  3213 
       
  3214 .sp
       
  3215 .ne 2
       
  3216 .mk
       
  3217 .na
       
  3218 \fB\fBM-f\fR\fR
       
  3219 .ad
       
  3220 .RS 21n
       
  3221 .rt  
       
  3222 forward-find-char
       
  3223 .RE
       
  3224 
       
  3225 .sp
       
  3226 .ne 2
       
  3227 .mk
       
  3228 .na
       
  3229 \fB\fBM-F\fR\fR
       
  3230 .ad
       
  3231 .RS 21n
       
  3232 .rt  
       
  3233 backward-find-char
       
  3234 .RE
       
  3235 
       
  3236 .sp
       
  3237 .ne 2
       
  3238 .mk
       
  3239 .na
       
  3240 \fB\fBM--\fR\fR
       
  3241 .ad
       
  3242 .RS 21n
       
  3243 .rt  
       
  3244 up-history
       
  3245 .RE
       
  3246 
       
  3247 .sp
       
  3248 .ne 2
       
  3249 .mk
       
  3250 .na
       
  3251 \fB\fBM-h\fR\fR
       
  3252 .ad
       
  3253 .RS 21n
       
  3254 .rt  
       
  3255 cursor-left
       
  3256 .RE
       
  3257 
       
  3258 .sp
       
  3259 .ne 2
       
  3260 .mk
       
  3261 .na
       
  3262 \fB\fBM-H\fR\fR
       
  3263 .ad
       
  3264 .RS 21n
       
  3265 .rt  
       
  3266 beginning-of-history
       
  3267 .RE
       
  3268 
       
  3269 .sp
       
  3270 .ne 2
       
  3271 .mk
       
  3272 .na
       
  3273 \fB\fBM-i\fR\fR
       
  3274 .ad
       
  3275 .RS 21n
       
  3276 .rt  
       
  3277 vi-insert
       
  3278 .RE
       
  3279 
       
  3280 .sp
       
  3281 .ne 2
       
  3282 .mk
       
  3283 .na
       
  3284 \fB\fBM-I\fR\fR
       
  3285 .ad
       
  3286 .RS 21n
       
  3287 .rt  
       
  3288 vi-insert-at-bol
       
  3289 .RE
       
  3290 
       
  3291 .sp
       
  3292 .ne 2
       
  3293 .mk
       
  3294 .na
       
  3295 \fB\fBM-j\fR\fR
       
  3296 .ad
       
  3297 .RS 21n
       
  3298 .rt  
       
  3299 down-history
       
  3300 .RE
       
  3301 
       
  3302 .sp
       
  3303 .ne 2
       
  3304 .mk
       
  3305 .na
       
  3306 \fB\fBM-J\fR\fR
       
  3307 .ad
       
  3308 .RS 21n
       
  3309 .rt  
       
  3310 history-search-forward
       
  3311 .RE
       
  3312 
       
  3313 .sp
       
  3314 .ne 2
       
  3315 .mk
       
  3316 .na
       
  3317 \fB\fBM-k\fR\fR
       
  3318 .ad
       
  3319 .RS 21n
       
  3320 .rt  
       
  3321 up-history
       
  3322 .RE
       
  3323 
       
  3324 .sp
       
  3325 .ne 2
       
  3326 .mk
       
  3327 .na
       
  3328 \fB\fBM-K\fR\fR
       
  3329 .ad
       
  3330 .RS 21n
       
  3331 .rt  
       
  3332 history-search-backward
       
  3333 .RE
       
  3334 
       
  3335 .sp
       
  3336 .ne 2
       
  3337 .mk
       
  3338 .na
       
  3339 \fB\fBM-l\fR\fR
       
  3340 .ad
       
  3341 .RS 21n
       
  3342 .rt  
       
  3343 cursor-right
       
  3344 .RE
       
  3345 
       
  3346 .sp
       
  3347 .ne 2
       
  3348 .mk
       
  3349 .na
       
  3350 \fB\fBM-L\fR\fR
       
  3351 .ad
       
  3352 .RS 21n
       
  3353 .rt  
       
  3354 end-of-history
       
  3355 .RE
       
  3356 
       
  3357 .sp
       
  3358 .ne 2
       
  3359 .mk
       
  3360 .na
       
  3361 \fB\fBM-n\fR\fR
       
  3362 .ad
       
  3363 .RS 21n
       
  3364 .rt  
       
  3365 history-re-search-forward
       
  3366 .RE
       
  3367 
       
  3368 .sp
       
  3369 .ne 2
       
  3370 .mk
       
  3371 .na
       
  3372 \fB\fBM-N\fR\fR
       
  3373 .ad
       
  3374 .RS 21n
       
  3375 .rt  
       
  3376 history-re-search-backward
       
  3377 .RE
       
  3378 
       
  3379 .sp
       
  3380 .ne 2
       
  3381 .mk
       
  3382 .na
       
  3383 \fB\fBM-p\fR\fR
       
  3384 .ad
       
  3385 .RS 21n
       
  3386 .rt  
       
  3387 append-yank
       
  3388 .RE
       
  3389 
       
  3390 .sp
       
  3391 .ne 2
       
  3392 .mk
       
  3393 .na
       
  3394 \fB\fBM-P\fR\fR
       
  3395 .ad
       
  3396 .RS 21n
       
  3397 .rt  
       
  3398 yank
       
  3399 .RE
       
  3400 
       
  3401 .sp
       
  3402 .ne 2
       
  3403 .mk
       
  3404 .na
       
  3405 \fB\fBM-r\fR\fR
       
  3406 .ad
       
  3407 .RS 21n
       
  3408 .rt  
       
  3409 vi-replace-char
       
  3410 .RE
       
  3411 
       
  3412 .sp
       
  3413 .ne 2
       
  3414 .mk
       
  3415 .na
       
  3416 \fB\fBM-R\fR\fR
       
  3417 .ad
       
  3418 .RS 21n
       
  3419 .rt  
       
  3420 vi-overwrite
       
  3421 .RE
       
  3422 
       
  3423 .sp
       
  3424 .ne 2
       
  3425 .mk
       
  3426 .na
       
  3427 \fB\fBM-s\fR\fR
       
  3428 .ad
       
  3429 .RS 21n
       
  3430 .rt  
       
  3431 vi-forward-change-char
       
  3432 .RE
       
  3433 
       
  3434 .sp
       
  3435 .ne 2
       
  3436 .mk
       
  3437 .na
       
  3438 \fB\fBM-S\fR\fR
       
  3439 .ad
       
  3440 .RS 21n
       
  3441 .rt  
       
  3442 vi-change-line
       
  3443 .RE
       
  3444 
       
  3445 .sp
       
  3446 .ne 2
       
  3447 .mk
       
  3448 .na
       
  3449 \fB\fBM-t\fR\fR
       
  3450 .ad
       
  3451 .RS 21n
       
  3452 .rt  
       
  3453 forward-to-char
       
  3454 .RE
       
  3455 
       
  3456 .sp
       
  3457 .ne 2
       
  3458 .mk
       
  3459 .na
       
  3460 \fB\fBM-T\fR\fR
       
  3461 .ad
       
  3462 .RS 21n
       
  3463 .rt  
       
  3464 backward-to-char
       
  3465 .RE
       
  3466 
       
  3467 .sp
       
  3468 .ne 2
       
  3469 .mk
       
  3470 .na
       
  3471 \fB\fBM-u\fR\fR
       
  3472 .ad
       
  3473 .RS 21n
       
  3474 .rt  
       
  3475 vi-undo
       
  3476 .RE
       
  3477 
       
  3478 .sp
       
  3479 .ne 2
       
  3480 .mk
       
  3481 .na
       
  3482 \fB\fBM-w\fR\fR
       
  3483 .ad
       
  3484 .RS 21n
       
  3485 .rt  
       
  3486 forward-to-word
       
  3487 .RE
       
  3488 
       
  3489 .sp
       
  3490 .ne 2
       
  3491 .mk
       
  3492 .na
       
  3493 \fB\fBM-W\fR\fR
       
  3494 .ad
       
  3495 .RS 21n
       
  3496 .rt  
       
  3497 forward-to-word
       
  3498 .RE
       
  3499 
       
  3500 .sp
       
  3501 .ne 2
       
  3502 .mk
       
  3503 .na
       
  3504 \fB\fBM-x\fR\fR
       
  3505 .ad
       
  3506 .RS 21n
       
  3507 .rt  
       
  3508 forward-delete-char
       
  3509 .RE
       
  3510 
       
  3511 .sp
       
  3512 .ne 2
       
  3513 .mk
       
  3514 .na
       
  3515 \fB\fBM-X\fR\fR
       
  3516 .ad
       
  3517 .RS 21n
       
  3518 .rt  
       
  3519 backward-delete-char
       
  3520 .RE
       
  3521 
       
  3522 .sp
       
  3523 .ne 2
       
  3524 .mk
       
  3525 .na
       
  3526 \fB\fBM-yh\fR\fR
       
  3527 .ad
       
  3528 .RS 21n
       
  3529 .rt  
       
  3530 backward-copy-char
       
  3531 .RE
       
  3532 
       
  3533 .sp
       
  3534 .ne 2
       
  3535 .mk
       
  3536 .na
       
  3537 \fB\fBM-y^H\fR\fR
       
  3538 .ad
       
  3539 .RS 21n
       
  3540 .rt  
       
  3541 backward-copy-char
       
  3542 .RE
       
  3543 
       
  3544 .sp
       
  3545 .ne 2
       
  3546 .mk
       
  3547 .na
       
  3548 \fB\fBM-y^?\fR\fR
       
  3549 .ad
       
  3550 .RS 21n
       
  3551 .rt  
       
  3552 backward-copy-char
       
  3553 .RE
       
  3554 
       
  3555 .sp
       
  3556 .ne 2
       
  3557 .mk
       
  3558 .na
       
  3559 \fB\fBM-yl\fR\fR
       
  3560 .ad
       
  3561 .RS 21n
       
  3562 .rt  
       
  3563 forward-copy-char
       
  3564 .RE
       
  3565 
       
  3566 .sp
       
  3567 .ne 2
       
  3568 .mk
       
  3569 .na
       
  3570 \fB\fBM-y\e\fR\fR
       
  3571 .ad
       
  3572 .RS 21n
       
  3573 .rt  
       
  3574 forward-copy-char (META-y-space)
       
  3575 .RE
       
  3576 
       
  3577 .sp
       
  3578 .ne 2
       
  3579 .mk
       
  3580 .na
       
  3581 \fB\fBM-ye\fR\fR
       
  3582 .ad
       
  3583 .RS 21n
       
  3584 .rt  
       
  3585 forward-copy-word
       
  3586 .RE
       
  3587 
       
  3588 .sp
       
  3589 .ne 2
       
  3590 .mk
       
  3591 .na
       
  3592 \fB\fBM-yE\fR\fR
       
  3593 .ad
       
  3594 .RS 21n
       
  3595 .rt  
       
  3596 forward-copy-word
       
  3597 .RE
       
  3598 
       
  3599 .sp
       
  3600 .ne 2
       
  3601 .mk
       
  3602 .na
       
  3603 \fB\fBM-yw\fR\fR
       
  3604 .ad
       
  3605 .RS 21n
       
  3606 .rt  
       
  3607 forward-copy-word
       
  3608 .RE
       
  3609 
       
  3610 .sp
       
  3611 .ne 2
       
  3612 .mk
       
  3613 .na
       
  3614 \fB\fBM-yW\fR\fR
       
  3615 .ad
       
  3616 .RS 21n
       
  3617 .rt  
       
  3618 forward-copy-word
       
  3619 .RE
       
  3620 
       
  3621 .sp
       
  3622 .ne 2
       
  3623 .mk
       
  3624 .na
       
  3625 \fB\fBM-yb\fR\fR
       
  3626 .ad
       
  3627 .RS 21n
       
  3628 .rt  
       
  3629 backward-copy-word
       
  3630 .RE
       
  3631 
       
  3632 .sp
       
  3633 .ne 2
       
  3634 .mk
       
  3635 .na
       
  3636 \fB\fBM-yB\fR\fR
       
  3637 .ad
       
  3638 .RS 21n
       
  3639 .rt  
       
  3640 backward-copy-word
       
  3641 .RE
       
  3642 
       
  3643 .sp
       
  3644 .ne 2
       
  3645 .mk
       
  3646 .na
       
  3647 \fB\fBM-yf\fR\fR
       
  3648 .ad
       
  3649 .RS 21n
       
  3650 .rt  
       
  3651 forward-copy-find
       
  3652 .RE
       
  3653 
       
  3654 .sp
       
  3655 .ne 2
       
  3656 .mk
       
  3657 .na
       
  3658 \fB\fBM-yF\fR\fR
       
  3659 .ad
       
  3660 .RS 21n
       
  3661 .rt  
       
  3662 backward-copy-find
       
  3663 .RE
       
  3664 
       
  3665 .sp
       
  3666 .ne 2
       
  3667 .mk
       
  3668 .na
       
  3669 \fB\fBM-yt\fR\fR
       
  3670 .ad
       
  3671 .RS 21n
       
  3672 .rt  
       
  3673 forward-copy-to
       
  3674 .RE
       
  3675 
       
  3676 .sp
       
  3677 .ne 2
       
  3678 .mk
       
  3679 .na
       
  3680 \fB\fBM-yT\fR\fR
       
  3681 .ad
       
  3682 .RS 21n
       
  3683 .rt  
       
  3684 backward-copy-to
       
  3685 .RE
       
  3686 
       
  3687 .sp
       
  3688 .ne 2
       
  3689 .mk
       
  3690 .na
       
  3691 \fB\fBM-y;\fR\fR
       
  3692 .ad
       
  3693 .RS 21n
       
  3694 .rt  
       
  3695 copy-refind
       
  3696 .RE
       
  3697 
       
  3698 .sp
       
  3699 .ne 2
       
  3700 .mk
       
  3701 .na
       
  3702 \fB\fBM-y,\fR\fR
       
  3703 .ad
       
  3704 .RS 21n
       
  3705 .rt  
       
  3706 copy-invert-refind
       
  3707 .RE
       
  3708 
       
  3709 .sp
       
  3710 .ne 2
       
  3711 .mk
       
  3712 .na
       
  3713 \fB\fBM-y^\fR\fR
       
  3714 .ad
       
  3715 .RS 21n
       
  3716 .rt  
       
  3717 copy-to-bol
       
  3718 .RE
       
  3719 
       
  3720 .sp
       
  3721 .ne 2
       
  3722 .mk
       
  3723 .na
       
  3724 \fB\fBM-y0\fR\fR
       
  3725 .ad
       
  3726 .RS 21n
       
  3727 .rt  
       
  3728 copy-to-bol
       
  3729 .RE
       
  3730 
       
  3731 .sp
       
  3732 .ne 2
       
  3733 .mk
       
  3734 .na
       
  3735 \fB\fBM-y$\fR\fR
       
  3736 .ad
       
  3737 .RS 21n
       
  3738 .rt  
       
  3739 copy-rest-of-line
       
  3740 .RE
       
  3741 
       
  3742 .sp
       
  3743 .ne 2
       
  3744 .mk
       
  3745 .na
       
  3746 \fB\fBM-yy\fR\fR
       
  3747 .ad
       
  3748 .RS 21n
       
  3749 .rt  
       
  3750 copy-line
       
  3751 .RE
       
  3752 
       
  3753 .sp
       
  3754 .ne 2
       
  3755 .mk
       
  3756 .na
       
  3757 \fB\fBM-Y\fR\fR
       
  3758 .ad
       
  3759 .RS 21n
       
  3760 .rt  
       
  3761 copy-line
       
  3762 .RE
       
  3763 
       
  3764 .sp
       
  3765 .ne 2
       
  3766 .mk
       
  3767 .na
       
  3768 \fB\fBM-y|\fR\fR
       
  3769 .ad
       
  3770 .RS 21n
       
  3771 .rt  
       
  3772 copy-to-column
       
  3773 .RE
       
  3774 
       
  3775 .sp
       
  3776 .ne 2
       
  3777 .mk
       
  3778 .na
       
  3779 \fB\fBM-y%\fR\fR
       
  3780 .ad
       
  3781 .RS 21n
       
  3782 .rt  
       
  3783 copy-to-parenthesis
       
  3784 .RE
       
  3785 
       
  3786 .sp
       
  3787 .ne 2
       
  3788 .mk
       
  3789 .na
       
  3790 \fB\fBM-^E\fR\fR
       
  3791 .ad
       
  3792 .RS 21n
       
  3793 .rt  
       
  3794 emacs-mode
       
  3795 .RE
       
  3796 
       
  3797 .sp
       
  3798 .ne 2
       
  3799 .mk
       
  3800 .na
       
  3801 \fB\fBM-^H\fR\fR
       
  3802 .ad
       
  3803 .RS 21n
       
  3804 .rt  
       
  3805 cursor-left
       
  3806 .RE
       
  3807 
       
  3808 .sp
       
  3809 .ne 2
       
  3810 .mk
       
  3811 .na
       
  3812 \fB\fBM-^?\fR\fR
       
  3813 .ad
       
  3814 .RS 21n
       
  3815 .rt  
       
  3816 cursor-left
       
  3817 .RE
       
  3818 
       
  3819 .sp
       
  3820 .ne 2
       
  3821 .mk
       
  3822 .na
       
  3823 \fB\fBM-^L\fR\fR
       
  3824 .ad
       
  3825 .RS 21n
       
  3826 .rt  
       
  3827 clear-screen
       
  3828 .RE
       
  3829 
       
  3830 .sp
       
  3831 .ne 2
       
  3832 .mk
       
  3833 .na
       
  3834 \fB\fBM-^N\fR\fR
       
  3835 .ad
       
  3836 .RS 21n
       
  3837 .rt  
       
  3838 down-history
       
  3839 .RE
       
  3840 
       
  3841 .sp
       
  3842 .ne 2
       
  3843 .mk
       
  3844 .na
       
  3845 \fB\fBM-^P\fR\fR
       
  3846 .ad
       
  3847 .RS 21n
       
  3848 .rt  
       
  3849 up-history
       
  3850 .RE
       
  3851 
       
  3852 .sp
       
  3853 .ne 2
       
  3854 .mk
       
  3855 .na
       
  3856 \fB\fBM-^R\fR\fR
       
  3857 .ad
       
  3858 .RS 21n
       
  3859 .rt  
       
  3860 redisplay
       
  3861 .RE
       
  3862 
       
  3863 .sp
       
  3864 .ne 2
       
  3865 .mk
       
  3866 .na
       
  3867 \fB\fBM-^D\fR\fR
       
  3868 .ad
       
  3869 .RS 21n
       
  3870 .rt  
       
  3871 list-or-eof
       
  3872 .RE
       
  3873 
       
  3874 .sp
       
  3875 .ne 2
       
  3876 .mk
       
  3877 .na
       
  3878 \fB\fBM-^I\fR\fR
       
  3879 .ad
       
  3880 .RS 21n
       
  3881 .rt  
       
  3882 complete-word
       
  3883 .RE
       
  3884 
       
  3885 .sp
       
  3886 .ne 2
       
  3887 .mk
       
  3888 .na
       
  3889 \fB\fBM-\er\fR\fR
       
  3890 .ad
       
  3891 .RS 21n
       
  3892 .rt  
       
  3893 newline
       
  3894 .RE
       
  3895 
       
  3896 .sp
       
  3897 .ne 2
       
  3898 .mk
       
  3899 .na
       
  3900 \fB\fBM-\en\fR\fR
       
  3901 .ad
       
  3902 .RS 21n
       
  3903 .rt  
       
  3904 newline
       
  3905 .RE
       
  3906 
       
  3907 .sp
       
  3908 .ne 2
       
  3909 .mk
       
  3910 .na
       
  3911 \fB\fBM-^X^R\fR\fR
       
  3912 .ad
       
  3913 .RS 21n
       
  3914 .rt  
       
  3915 read-init-files
       
  3916 .RE
       
  3917 
       
  3918 .sp
       
  3919 .ne 2
       
  3920 .mk
       
  3921 .na
       
  3922 \fB\fBM-^Xh\fR\fR
       
  3923 .ad
       
  3924 .RS 21n
       
  3925 .rt  
       
  3926 list-history
       
  3927 .RE
       
  3928 
       
  3929 .sp
       
  3930 .ne 2
       
  3931 .mk
       
  3932 .na
       
  3933 \fB\fBM-0, M-1, ... M-9\fR\fR
       
  3934 .ad
       
  3935 .RS 21n
       
  3936 .rt  
       
  3937 digit-argument (see below)
       
  3938 .RE
       
  3939 
       
  3940 .sp
       
  3941 .LP
       
  3942 Note that \fB^I\fR is what the TAB key generates.
       
  3943 .SS "Entering Repeat Counts"
       
  3944 .sp
       
  3945 .LP
       
  3946 Many of the key binding functions described previously, take an optional count, typed in before the target key sequence. This is interpreted as a repeat count by most bindings. A notable exception is the goto-column binding, which interprets the count as a column number.
       
  3947 .sp
       
  3948 .LP
       
  3949 By default you can specify this count argument by pressing the META key while typing in the numeric count. This relies on the digit-argument action being bound to 'META-0', 'META-1' etc. Once any one of these bindings has been activated, you can optionally take your finger off the META key to type in the rest of the number, since every numeric digit thereafter is treated as part of the number, unless it is preceded by the literal-next binding. As soon as a non-digit, or literal digit key is pressed the repeat count is terminated and either causes the just typed character to be added to the line that many times, or causes the next key binding function to be given that argument.
       
  3950 .sp
       
  3951 .LP
       
  3952 For example, in \fBemacs\fR mode, typing: 
       
  3953 .sp
       
  3954 .in +2
       
  3955 .nf
       
  3956 M-12a
       
  3957 .fi
       
  3958 .in -2
       
  3959 
       
  3960 .sp
       
  3961 .LP
       
  3962 causes the letter 'a' to be added to the line 12 times, whereas 
       
  3963 .sp
       
  3964 .in +2
       
  3965 .nf
       
  3966 M-4M-c
       
  3967 .fi
       
  3968 .in -2
       
  3969 
       
  3970 .sp
       
  3971 .LP
       
  3972 Capitalizes the next 4 words.
       
  3973 .sp
       
  3974 .LP
       
  3975 In \fBvi\fR command mode the meta modifier is automatically added to all characters typed in, so to enter a count in \fBvi\fR command-mode, just involves typing in the number, just as it does in the \fBvi\fR editor itself. So for example, in vi command mode, typing:
       
  3976 .sp
       
  3977 .in +2
       
  3978 .nf
       
  3979 4w2x
       
  3980 .fi
       
  3981 .in -2
       
  3982 
       
  3983 .sp
       
  3984 .LP
       
  3985 moves the cursor four words to the right, then deletes two characters.
       
  3986 .sp
       
  3987 .LP
       
  3988 You can also bind digit-argument to other key sequences. If these end in a numeric digit, that digit gets appended to the current repeat count. If it doesn't end in a numeric digit, a new repeat count is started with a value of zero, and can be completed by typing in the number, after letting go of the key which triggered the digit-argument action.
       
  3989 .SH FILES
       
  3990 .sp
       
  3991 .ne 2
       
  3992 .mk
       
  3993 .na
       
  3994 \fB\fB/usr/lib/libtecla.so\fR\fR
       
  3995 .ad
       
  3996 .RS 27n
       
  3997 .rt  
       
  3998 The tecla library
       
  3999 .RE
       
  4000 
       
  4001 .sp
       
  4002 .ne 2
       
  4003 .mk
       
  4004 .na
       
  4005 \fB\fB/usr/include/libtecla.h\fR\fR
       
  4006 .ad
       
  4007 .RS 27n
       
  4008 .rt  
       
  4009 The tecla header file
       
  4010 .RE
       
  4011 
       
  4012 .sp
       
  4013 .ne 2
       
  4014 .mk
       
  4015 .na
       
  4016 \fB\fB~/.teclarc\fR\fR
       
  4017 .ad
       
  4018 .RS 27n
       
  4019 .rt  
       
  4020 The personal tecla customization file
       
  4021 .RE
       
  4022 
       
  4023 .SH ATTRIBUTES
       
  4024 .sp
       
  4025 .LP
       
  4026 See \fBattributes\fR(5) for descriptions of the following attributes:
       
  4027 .sp
       
  4028 
       
  4029 .sp
       
  4030 .TS
       
  4031 tab() box;
       
  4032 cw(2.75i) |cw(2.75i) 
       
  4033 lw(2.75i) |lw(2.75i) 
       
  4034 .
       
  4035 ATTRIBUTE TYPEATTRIBUTE VALUE
       
  4036 _
       
  4037 Availabilitylibrary/libtecla
       
  4038 _
       
  4039 Interface StabilityCommitted
       
  4040 .TE
       
  4041 
       
  4042 .SH SEE ALSO
       
  4043 .sp
       
  4044 .LP
       
  4045 \fBvi\fR(1), \fBcpl_complete_word\fR(3TECLA), \fBef_expand_file\fR(3TECLA), \fBgl_get_line\fR(3TECLA), \fBgl_io_mode\fR(3TECLA), \fBlibtecla\fR(3LIB), \fBpca_lookup_file\fR(3TECLA), \fBattributes\fR(5)