You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
498 lines
12 KiB
498 lines
12 KiB
.\" $NetBSD: editrc.5,v 1.27 2013/01/10 16:03:42 wiz Exp $ |
|
.\" |
|
.\" Copyright (c) 1997-2000 The NetBSD Foundation, Inc. |
|
.\" All rights reserved. |
|
.\" |
|
.\" This file was contributed to The NetBSD Foundation by Luke Mewburn. |
|
.\" |
|
.\" Redistribution and use in source and binary forms, with or without |
|
.\" modification, are permitted provided that the following conditions |
|
.\" are met: |
|
.\" 1. Redistributions of source code must retain the above copyright |
|
.\" notice, this list of conditions and the following disclaimer. |
|
.\" 2. Redistributions in binary form must reproduce the above copyright |
|
.\" notice, this list of conditions and the following disclaimer in the |
|
.\" documentation and/or other materials provided with the distribution. |
|
.\" |
|
.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS |
|
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED |
|
.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
|
.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS |
|
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
|
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
|
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
|
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
|
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
|
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
|
.\" POSSIBILITY OF SUCH DAMAGE. |
|
.\" |
|
.Dd January 10, 2013 |
|
.Dt EDITRC 5 |
|
.Os |
|
.Sh NAME |
|
.Nm editrc |
|
.Nd configuration file for editline library |
|
.Sh SYNOPSIS |
|
.Nm |
|
.Sh DESCRIPTION |
|
The |
|
.Nm |
|
file defines various settings to be used by the |
|
.Xr editline 3 |
|
library. |
|
.Pp |
|
The format of each line is: |
|
.Dl [prog:]command [arg [...]] |
|
.Pp |
|
.Ar command |
|
is one of the |
|
.Xr editline 3 |
|
builtin commands. |
|
Refer to |
|
.Sx BUILTIN COMMANDS |
|
for more information. |
|
.Pp |
|
.Ar prog |
|
is the program name string that a program defines when it calls |
|
.Xr el_init 3 |
|
to set up |
|
.Xr editline 3 , |
|
which is usually |
|
.Va argv[0] . |
|
.Ar command |
|
will be executed for any program which matches |
|
.Ar prog . |
|
.Pp |
|
.Ar prog |
|
may also be a |
|
.Xr regex 3 |
|
style |
|
regular expression, in which case |
|
.Ar command |
|
will be executed for any program that matches the regular expression. |
|
.Pp |
|
If |
|
.Ar prog |
|
is absent, |
|
.Ar command |
|
is executed for all programs. |
|
.Sh BUILTIN COMMANDS |
|
The |
|
.Nm editline |
|
library has some builtin commands, which affect the way |
|
that the line editing and history functions operate. |
|
These are based on similar named builtins present in the |
|
.Xr tcsh 1 |
|
shell. |
|
.Pp |
|
The following builtin commands are available: |
|
.Bl -tag -width 4n |
|
.It Ic bind Oo Fl a Oc Oo Fl e Oc Oo Fl k Oc Oo Fl l Oc Oo Fl r Oc \ |
|
Oo Fl s Oc Oo Fl v Oc Oo Ar key Oo Ar command Oc Oc |
|
Without options, list all bound keys, and the editor command to which |
|
each is bound. |
|
If |
|
.Ar key |
|
is supplied, show the bindings for |
|
.Ar key . |
|
If |
|
.Ar key command |
|
is supplied, bind |
|
.Ar command |
|
to |
|
.Ar key . |
|
Options include: |
|
.Bl -tag -width 4n |
|
.It Fl e |
|
Bind all keys to the standard GNU Emacs-like bindings. |
|
.It Fl v |
|
Bind all keys to the standard |
|
.Xr vi 1 Ns -like |
|
bindings. |
|
.It Fl a |
|
List or change key bindings in the |
|
.Xr vi 1 |
|
mode alternate (command mode) key map. |
|
.It Fl k |
|
.Ar key |
|
is interpreted as a symbolic arrow key name, which may be one of |
|
.Sq up , |
|
.Sq down , |
|
.Sq left |
|
or |
|
.Sq right . |
|
.It Fl l |
|
List all editor commands and a short description of each. |
|
.It Fl r |
|
Remove a key's binding. |
|
.It Fl s |
|
.Ar command |
|
is taken as a literal string and treated as terminal input when |
|
.Ar key |
|
is typed. |
|
Bound keys in |
|
.Ar command |
|
are themselves reinterpreted, and this continues for ten levels of |
|
interpretation. |
|
.El |
|
.Pp |
|
.Ar command |
|
may be one of the commands documented in |
|
.Sx "EDITOR COMMANDS" |
|
below, or another key. |
|
.Pp |
|
.Ar key |
|
and |
|
.Ar command |
|
can contain control characters of the form |
|
.Sm off |
|
.Sq No ^ Ar character |
|
.Sm on |
|
.Po |
|
e.g. |
|
.Sq ^A |
|
.Pc , |
|
and the following backslashed escape sequences: |
|
.Pp |
|
.Bl -tag -compact -offset indent -width 4n |
|
.It Ic \ea |
|
Bell |
|
.It Ic \eb |
|
Backspace |
|
.It Ic \ee |
|
Escape |
|
.It Ic \ef |
|
Formfeed |
|
.It Ic \en |
|
Newline |
|
.It Ic \er |
|
Carriage return |
|
.It Ic \et |
|
Horizontal tab |
|
.It Ic \ev |
|
Vertical tab |
|
.Sm off |
|
.It Sy \e Ar nnn |
|
.Sm on |
|
The ASCII character corresponding to the octal number |
|
.Ar nnn . |
|
.El |
|
.Pp |
|
.Sq \e |
|
nullifies the special meaning of the following character, |
|
if it has any, notably |
|
.Sq \e |
|
and |
|
.Sq ^ . |
|
.It Ic echotc Oo Fl sv Oc Ar arg Ar ... |
|
Exercise terminal capabilities given in |
|
.Ar arg Ar ... . |
|
If |
|
.Ar arg |
|
is |
|
.Sq baud , |
|
.Sq cols , |
|
.Sq lines , |
|
.Sq rows , |
|
.Sq meta , |
|
or |
|
.Sq tabs , |
|
the value of that capability is printed, with |
|
.Dq yes |
|
or |
|
.Dq no |
|
indicating that the terminal does or does not have that capability. |
|
.Pp |
|
.Fl s |
|
returns an empty string for non-existent capabilities, rather than |
|
causing an error. |
|
.Fl v |
|
causes messages to be verbose. |
|
.It Ic edit Op Li on | Li off |
|
Enable or disable the |
|
.Nm editline |
|
functionality in a program. |
|
.It Ic history Ar list | Ar size Dv n | Ar unique Dv n |
|
The |
|
.Ar list |
|
command lists all entries in the history. |
|
The |
|
.Ar size |
|
command sets the history size to |
|
.Dv n |
|
entries. |
|
The |
|
.Ar unique |
|
command controls if history should keep duplicate entries. |
|
If |
|
.Dv n |
|
is non zero, only keep unique history entries. |
|
If |
|
.Dv n |
|
is zero, then keep all entries (the default). |
|
.It Ic telltc |
|
List the values of all the terminal capabilities (see |
|
.Xr termcap 5 ) . |
|
.It Ic settc Ar cap Ar val |
|
Set the terminal capability |
|
.Ar cap |
|
to |
|
.Ar val , |
|
as defined in |
|
.Xr termcap 5 . |
|
No sanity checking is done. |
|
.It Ic setty Oo Fl a Oc Oo Fl d Oc Oo Fl q Oc Oo Fl x Oc Oo Ar +mode Oc \ |
|
Oo Ar -mode Oc Oo Ar mode Oc Oo Ar char=c Oc |
|
Control which tty modes that |
|
.Nm |
|
won't allow the user to change. |
|
.Fl d , |
|
.Fl q |
|
or |
|
.Fl x |
|
tells |
|
.Ic setty |
|
to act on the |
|
.Sq edit , |
|
.Sq quote |
|
or |
|
.Sq execute |
|
set of tty modes respectively; defaulting to |
|
.Fl x . |
|
.Pp |
|
Without other arguments, |
|
.Ic setty |
|
lists the modes in the chosen set which are fixed on |
|
.Po |
|
.Sq +mode |
|
.Pc |
|
or off |
|
.Po |
|
.Sq -mode |
|
.Pc . |
|
.Fl a |
|
lists all tty modes in the chosen set regardless of the setting. |
|
With |
|
.Ar +mode , |
|
.Ar -mode |
|
or |
|
.Ar mode , |
|
fixes |
|
.Ar mode |
|
on or off or removes control of |
|
.Ar mode |
|
in the chosen set. |
|
.Pp |
|
.Ic Setty |
|
can also be used to set tty characters to particular values using |
|
.Ar char=value . |
|
If |
|
.Ar value |
|
is empty |
|
then the character is set to |
|
.Dv _POSIX_VDISABLE . |
|
.El |
|
.Sh EDITOR COMMANDS |
|
The following editor commands are available for use in key bindings: |
|
.\" Section automatically generated with makelist |
|
.Bl -tag -width 4n |
|
.It Ic vi-paste-next |
|
Vi paste previous deletion to the right of the cursor. |
|
.It Ic vi-paste-prev |
|
Vi paste previous deletion to the left of the cursor. |
|
.It Ic vi-prev-space-word |
|
Vi move to the previous space delimited word. |
|
.It Ic vi-prev-word |
|
Vi move to the previous word. |
|
.It Ic vi-next-space-word |
|
Vi move to the next space delimited word. |
|
.It Ic vi-next-word |
|
Vi move to the next word. |
|
.It Ic vi-change-case |
|
Vi change case of character under the cursor and advance one character. |
|
.It Ic vi-change-meta |
|
Vi change prefix command. |
|
.It Ic vi-insert-at-bol |
|
Vi enter insert mode at the beginning of line. |
|
.It Ic vi-replace-char |
|
Vi replace character under the cursor with the next character typed. |
|
.It Ic vi-replace-mode |
|
Vi enter replace mode. |
|
.It Ic vi-substitute-char |
|
Vi replace character under the cursor and enter insert mode. |
|
.It Ic vi-substitute-line |
|
Vi substitute entire line. |
|
.It Ic vi-change-to-eol |
|
Vi change to end of line. |
|
.It Ic vi-insert |
|
Vi enter insert mode. |
|
.It Ic vi-add |
|
Vi enter insert mode after the cursor. |
|
.It Ic vi-add-at-eol |
|
Vi enter insert mode at end of line. |
|
.It Ic vi-delete-meta |
|
Vi delete prefix command. |
|
.It Ic vi-end-word |
|
Vi move to the end of the current space delimited word. |
|
.It Ic vi-to-end-word |
|
Vi move to the end of the current word. |
|
.It Ic vi-undo |
|
Vi undo last change. |
|
.It Ic vi-command-mode |
|
Vi enter command mode (use alternative key bindings). |
|
.It Ic vi-zero |
|
Vi move to the beginning of line. |
|
.It Ic vi-delete-prev-char |
|
Vi move to previous character (backspace). |
|
.It Ic vi-list-or-eof |
|
Vi list choices for completion or indicate end of file if empty line. |
|
.It Ic vi-kill-line-prev |
|
Vi cut from beginning of line to cursor. |
|
.It Ic vi-search-prev |
|
Vi search history previous. |
|
.It Ic vi-search-next |
|
Vi search history next. |
|
.It Ic vi-repeat-search-next |
|
Vi repeat current search in the same search direction. |
|
.It Ic vi-repeat-search-prev |
|
Vi repeat current search in the opposite search direction. |
|
.It Ic vi-next-char |
|
Vi move to the character specified next. |
|
.It Ic vi-prev-char |
|
Vi move to the character specified previous. |
|
.It Ic vi-to-next-char |
|
Vi move up to the character specified next. |
|
.It Ic vi-to-prev-char |
|
Vi move up to the character specified previous. |
|
.It Ic vi-repeat-next-char |
|
Vi repeat current character search in the same search direction. |
|
.It Ic vi-repeat-prev-char |
|
Vi repeat current character search in the opposite search direction. |
|
.It Ic em-delete-or-list |
|
Delete character under cursor or list completions if at end of line. |
|
.It Ic em-delete-next-word |
|
Cut from cursor to end of current word. |
|
.It Ic em-yank |
|
Paste cut buffer at cursor position. |
|
.It Ic em-kill-line |
|
Cut the entire line and save in cut buffer. |
|
.It Ic em-kill-region |
|
Cut area between mark and cursor and save in cut buffer. |
|
.It Ic em-copy-region |
|
Copy area between mark and cursor to cut buffer. |
|
.It Ic em-gosmacs-transpose |
|
Exchange the two characters before the cursor. |
|
.It Ic em-next-word |
|
Move next to end of current word. |
|
.It Ic em-upper-case |
|
Uppercase the characters from cursor to end of current word. |
|
.It Ic em-capitol-case |
|
Capitalize the characters from cursor to end of current word. |
|
.It Ic em-lower-case |
|
Lowercase the characters from cursor to end of current word. |
|
.It Ic em-set-mark |
|
Set the mark at cursor. |
|
.It Ic em-exchange-mark |
|
Exchange the cursor and mark. |
|
.It Ic em-universal-argument |
|
Universal argument (argument times 4). |
|
.It Ic em-meta-next |
|
Add 8th bit to next character typed. |
|
.It Ic em-toggle-overwrite |
|
Switch from insert to overwrite mode or vice versa. |
|
.It Ic em-copy-prev-word |
|
Copy current word to cursor. |
|
.It Ic em-inc-search-next |
|
Emacs incremental next search. |
|
.It Ic em-inc-search-prev |
|
Emacs incremental reverse search. |
|
.It Ic ed-end-of-file |
|
Indicate end of file. |
|
.It Ic ed-insert |
|
Add character to the line. |
|
.It Ic ed-delete-prev-word |
|
Delete from beginning of current word to cursor. |
|
.It Ic ed-delete-next-char |
|
Delete character under cursor. |
|
.It Ic ed-kill-line |
|
Cut to the end of line. |
|
.It Ic ed-move-to-end |
|
Move cursor to the end of line. |
|
.It Ic ed-move-to-beg |
|
Move cursor to the beginning of line. |
|
.It Ic ed-transpose-chars |
|
Exchange the character to the left of the cursor with the one under it. |
|
.It Ic ed-next-char |
|
Move to the right one character. |
|
.It Ic ed-prev-word |
|
Move to the beginning of the current word. |
|
.It Ic ed-prev-char |
|
Move to the left one character. |
|
.It Ic ed-quoted-insert |
|
Add the next character typed verbatim. |
|
.It Ic ed-digit |
|
Adds to argument or enters a digit. |
|
.It Ic ed-argument-digit |
|
Digit that starts argument. |
|
.It Ic ed-unassigned |
|
Indicates unbound character. |
|
.It Ic ed-tty-sigint |
|
Tty interrupt character. |
|
.It Ic ed-tty-dsusp |
|
Tty delayed suspend character. |
|
.It Ic ed-tty-flush-output |
|
Tty flush output characters. |
|
.It Ic ed-tty-sigquit |
|
Tty quit character. |
|
.It Ic ed-tty-sigtstp |
|
Tty suspend character. |
|
.It Ic ed-tty-stop-output |
|
Tty disallow output characters. |
|
.It Ic ed-tty-start-output |
|
Tty allow output characters. |
|
.It Ic ed-newline |
|
Execute command. |
|
.It Ic ed-delete-prev-char |
|
Delete the character to the left of the cursor. |
|
.It Ic ed-clear-screen |
|
Clear screen leaving current line at the top. |
|
.It Ic ed-redisplay |
|
Redisplay everything. |
|
.It Ic ed-start-over |
|
Erase current line and start from scratch. |
|
.It Ic ed-sequence-lead-in |
|
First character in a bound sequence. |
|
.It Ic ed-prev-history |
|
Move to the previous history line. |
|
.It Ic ed-next-history |
|
Move to the next history line. |
|
.It Ic ed-search-prev-history |
|
Search previous in history for a line matching the current. |
|
.It Ic ed-search-next-history |
|
Search next in history for a line matching the current. |
|
.It Ic ed-prev-line |
|
Move up one line. |
|
.It Ic ed-next-line |
|
Move down one line. |
|
.It Ic ed-command |
|
Editline extended command. |
|
.El |
|
.\" End of section automatically generated with makelist |
|
.Sh FILES |
|
.Bl -tag -width "~/.editrcXXX" |
|
.It Pa ~/.editrc |
|
User configuration file for the |
|
.Xr editline 3 |
|
library. |
|
.El |
|
.Sh SEE ALSO |
|
.Xr editline 3 , |
|
.Xr regex 3 , |
|
.Xr termcap 5 |
|
.Sh AUTHORS |
|
The |
|
.Nm editline |
|
library was written by Christos Zoulas, |
|
and this manual was written by Luke Mewburn, |
|
with some sections inspired by |
|
.Xr tcsh 1 .
|
|
|