# editrc(5edit) - man - phpman

[EDITRC(5edit)](https://www.chedong.com/phpMan.php/man/EDITRC/5edit/markdown)                        LOCAL                       [EDITRC(5edit)](https://www.chedong.com/phpMan.php/man/EDITRC/5edit/markdown)

## NAME
     **editrc** — configuration file for editline library

## SYNOPSIS
### editrc

## DESCRIPTION
     The **editrc** file defines various settings to be used by the [editline(3edit)](https://www.chedong.com/phpMan.php/man/editline/3edit/markdown) library.

     The format of each line is:

           [prog:]command [arg ...]

     _command_ is one of the [editline(3edit)](https://www.chedong.com/phpMan.php/man/editline/3edit/markdown) builtin commands.  Refer to _BUILTIN_ _COMMANDS_ for more in‐
     formation.

     _prog_ is the program name string that a program defines when it calls [el_init(3)](https://www.chedong.com/phpMan.php/man/elinit/3/markdown) to set up
     [editline(3edit)](https://www.chedong.com/phpMan.php/man/editline/3edit/markdown), which is usually _argv[0]_.  _command_ will be executed for any program which
     matches _prog_.

     _prog_ may also be a [regex(3)](https://www.chedong.com/phpMan.php/man/regex/3/markdown) style regular expression, in which case _command_ will be executed
     for any program that matches the regular expression.

     If _prog_ is absent, _command_ is executed for all programs.

## BUILTIN COMMANDS
     The **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 [tcsh(1)](https://www.chedong.com/phpMan.php/man/tcsh/1/markdown)
     shell.

     The following builtin commands are available:

     **bind** [**-aeklrsv**] [_key_ [_command_]]
           Without options and arguments, list all bound keys and macros, and the editor command or
           input string to which each one is bound.  If only _key_ is supplied, show the binding for
           that key or macro.  If _key_ _command_ is supplied, bind the editor _command_ to that key or
           macro.

           The options are as follows:

           **-a**    List or change key bindings in the [vi(1)](https://www.chedong.com/phpMan.php/man/vi/1/markdown) mode alternate (command mode) key map.

           **-e**    Bind all keys to the standard GNU Emacs-like bindings.

           **-k**    _key_ is interpreted as a symbolic arrow key name, which may be one of ‘up’, ‘down’,
                 ‘left’ or ‘right’.

           **-l**    List all editor commands and a short description of each.

           **-r**    Remove the binding of the key or macro _key_.

           **-s**    Define a keyboard macro rather than a key binding or command macro: _command_ is
                 taken as a literal string and appended to the input queue whenever _key_ is typed.
                 Bound keys and macros in _command_ are themselves reinterpreted, and this continues
                 for ten levels of interpretation.

           **-v**    Bind all keys to the standard [vi(1)](https://www.chedong.com/phpMan.php/man/vi/1/markdown)-like bindings.

           The [editline(7edit)](https://www.chedong.com/phpMan.php/man/editline/7edit/markdown) manual documents all editor commands and contains more information
           about macros and the input queue.

           _key_ and _command_ can contain control characters of the form ‘^_character_’ (e.g. ‘^A’), and
           the following backslashed escape sequences:

                 **\a**    Bell
                 **\b**    Backspace
                 **\e**    Escape
                 **\f**    Formfeed
                 **\n**    Newline
                 **\r**    Carriage return
                 **\t**    Horizontal tab
                 **\v**    Vertical tab
                 **\**_nnn_  The ASCII character corresponding to the octal number _nnn_.

           ‘\’ nullifies the special meaning of the following character, if it has any, notably ‘\’
           and ‘^’.

     **echotc** [**-sv**] _arg_ _..._
           Exercise terminal capabilities given in _arg_ _..._.  If _arg_ is ‘baud’, ‘cols’, ‘lines’,
           ‘rows’, ‘meta’, or ‘tabs’, the value of that capability is printed, with “yes” or “no”
           indicating that the terminal does or does not have that capability.

           **-s** returns an empty string for non-existent capabilities, rather than causing an error.
           **-v** causes messages to be verbose.

     **edit** [on | off]
           Enable or disable the **editline** functionality in a program.

     **history** _list_ | _size_ n | _unique_ n
           The _list_ command lists all entries in the history.  The _size_ command sets the history
           size to n entries.  The _unique_ command controls if history should keep duplicate entries.
           If n is non zero, only keep unique history entries.  If n is zero, then keep all entries
           (the default).

     **settc** _cap_ _val_
           Set the terminal capability _cap_ to _val_, as defined in [termcap(5)](https://www.chedong.com/phpMan.php/man/termcap/5/markdown).  No sanity checking is
           done.

     **setty** [**-a**] [**-d**] [**-q**] [**-x**] [_+mode_] [_-mode_] [_mode_] [_char=c_]
           Control which tty modes that **editrc** won't allow the user to change.  **-d**, **-q** or **-x** tells
           **setty** to act on the ‘edit’, ‘quote’ or ‘execute’ set of tty modes respectively; default‐
           ing to **-x**.

           Without other arguments, **setty** lists the modes in the chosen set which are fixed on
           (‘+mode’) or off (‘-mode’).  **-a** lists all tty modes in the chosen set regardless of the
           setting.  With _+mode_, _-mode_ or _mode_, fixes _mode_ on or off or removes control of _mode_ in
           the chosen set.

           **Setty** can also be used to set tty characters to particular values using _char=value_.  If
           _value_ is empty then the character is set to _POSIX_VDISABLE.

### telltc
           List the values of all the terminal capabilities (see [termcap(5)](https://www.chedong.com/phpMan.php/man/termcap/5/markdown)).

## ENVIRONMENT
     EDITRC        Names the default configuration file for the [editline(3edit)](https://www.chedong.com/phpMan.php/man/editline/3edit/markdown) library.

## FILES
     ~/.editrc     Last resort, if no other file is specified, user configuration file for the
                   [editline(3edit)](https://www.chedong.com/phpMan.php/man/editline/3edit/markdown) library.

## SEE ALSO
     [editline(3edit)](https://www.chedong.com/phpMan.php/man/editline/3edit/markdown), [regex(3)](https://www.chedong.com/phpMan.php/man/regex/3/markdown), [termcap(5)](https://www.chedong.com/phpMan.php/man/termcap/5/markdown), [editline(7edit)](https://www.chedong.com/phpMan.php/man/editline/7edit/markdown)

## AUTHORS
     The **editline** library was written by Christos Zoulas, and this manual was written by Luke
     Mewburn, with some sections inspired by [tcsh(1)](https://www.chedong.com/phpMan.php/man/tcsh/1/markdown).

BSD                              May 22, 2016                              BSD
