HEADER

|key-mapping| |abbreviations| |user-commands| +

section:Key{nbsp}mapping[key-mapping,mapping,macro]

The key mapping commands can be used to either redefine the standard key
bindings or define new ones.  A mapping consists of a key, or sequence of keys,
which are translated to a string of characters.  Example:

  :map <F2> :echo new Date().toDateString()<CR>

will echo the current date to the command-line when [m]<F2>[m] is pressed.

There are separate key mapping tables for each of the Normal, Insert,
Command-line modes.

|:map-special-chars| +

|<Nop>| +
||<Nop>||
________________________________________________________________________________
Do nothing.  This command is useful for disabling a specific mapping.  [c]:map
<C-n> <Nop>[c] will prevent [m]<C-n>[m] from doing anything.
________________________________________________________________________________


|<CR>| |map_return| +
||<CR>||
________________________________________________________________________________
Expand to a line terminator in a key mapping.  An Ex command in the {rhs} of a
mapping requires a a line terminator after it so that it is executed when the
mapping is expanded.  [m]<CR>[m] should be used for this purpose.
________________________________________________________________________________


|<Leader>| |mapleader| +
||<Leader>||
________________________________________________________________________________
Expands to the value of the "mapleader" variable in key mapping. If
"mapleader" is unset or empty then "\" is used. Example: +
\{nbsp}[c]:map <Leader>h :echo "Hello"<CR>[c] +
works like +
\{nbsp}[c]:map \h :echo "Hello"<CR>[c] +
but after +
\{nbsp}[c]let mapleader = ","[c] +
it works like +
\{nbsp}[c]:map ,h :echo "Hello"<CR>[c]
________________________________________________________________________________


|:map|
||:map {lhs} {rhs}|| +
||:map {lhs}|| +
||:map||
________________________________________________________________________________
Map the key sequence {lhs} to {rhs}. The {rhs} is remapped, allowing for
nested and recursive mappings. Mappings are NOT saved during sessions, make
sure you put them in your vimperatorrc file!
________________________________________________________________________________


|:cm| |:cmap|
||:cmap {lhs} {rhs}|| +
||:cmap {lhs}|| +
||:cmap||
________________________________________________________________________________
Map the key sequence {lhs} to {rhs} (in Command-line mode). The {rhs} is
remapped, allowing for nested and recursive mappings. Mappings are NOT saved
during sessions, make sure you put them in your vimperatorrc file!
________________________________________________________________________________


|:im| |:imap|
||:imap {lhs} {rhs}|| +
||:imap {lhs}|| +
||:imap||
________________________________________________________________________________
Map the key sequence {lhs} to {rhs} (in insert mode). The {rhs} is remapped,
allowing for nested and recursive mappings. Mappings are NOT saved during
sessions, make sure you put them in your vimperatorrc file!
________________________________________________________________________________


|:mapc| |:mapclear| +
||:mapc[lear]||
________________________________________________________________________________
Remove all mappings. All user-defined mappings which were set by [c]:map[c] or
[c]:noremap[c] are cleared.
________________________________________________________________________________


|:cmapc| |:cmapclear| +
||:cmapc[lear]||
________________________________________________________________________________
Remove all mappings (in Command-line mode). All user-defined mappings which
were set by [c]:cmap[c] or [c]:cnoremap[c] are cleared.
________________________________________________________________________________


|:imapc| |:imapclear| +
||:imapc[lear]||
________________________________________________________________________________
Remove all mappings (in insert mode). All user-defined mappings which were set
by [c]:imap[c] or [c]:inoremap[c] are cleared.
________________________________________________________________________________


|:no| |:noremap| +
||:no[remap] {lhs} {rhs}|| +
||:no[remap] {lhs}|| +
||:no[remap]||
________________________________________________________________________________
Map the key sequence {lhs} to {rhs}. No remapping of the {rhs} is performed.
________________________________________________________________________________


|:cno| |:cnoremap| +
||:cno[remap] {lhs} {rhs}|| +
||:cno[remap] {lhs}|| +
||:cno[remap]||
________________________________________________________________________________
Map the key sequence {lhs} to {rhs} (in Command-line mode). No remapping of
the {rhs} is performed.
________________________________________________________________________________


|:ino| |:inoremap| +
||:ino[remap] {lhs} {rhs}|| +
||:ino[remap] {lhs}|| +
||:ino[remap]||
________________________________________________________________________________
Map the key sequence {lhs} to {rhs} (in insert mode). No remapping of the
{rhs} is performed.
________________________________________________________________________________


|:unm| |:unmap| +
||:unm[ap] {lhs}||
________________________________________________________________________________
Remove the mapping of {lhs}.
________________________________________________________________________________


|:cunm| |:cunmap| +
||:cunm[ap] {lhs}||
________________________________________________________________________________
Remove the mapping of {lhs} (in Command-line mode).
________________________________________________________________________________


|:iunm| |:iunmap| +
||:iunm[ap] {lhs}||
________________________________________________________________________________
Remove the mapping of {lhs} (in insert mode).
________________________________________________________________________________

section:Abbreviations[abbreviations]

|:ab| |:abbreviate|
||:ab[breviate] {lhs} {rhs}|| +
||:ab[breviate] {lhs}|| +
||:ab[breviate]||
________________________________________________________________________________
Abbreviate a key sequence. Abbreviate {lhs} to {rhs}.
If only {lhs} given, list that particular abbreviation.
List all abbreviations, if no arguments to are given.
________________________________________________________________________________


|:ca| |:cabbrev|
||:ca[bbrev] {lhs} {rhs}|| +
||:ca[bbrev] {lhs}|| +
||:ca[bbrev]||
________________________________________________________________________________
Abbreviate a key sequence for Command-line mode. Same as [c]:ab[reviate][c],
but for Command-line mode only.
________________________________________________________________________________


|:ia| |:iabbrev|
||:ia[bbrev] {lhs} {rhs}|| +
||:ia[bbrev] {lhs}|| +
||:ia[bbrev]||
________________________________________________________________________________
Abbreviate a key sequence for Insert mode. Same as [c]:ab[breviate][c], but
for Insert mode only.
________________________________________________________________________________


|:una| |:unabbreviate|
||:una[bbreviate] {lhs}|| +
________________________________________________________________________________
Remove an abbreviation.
________________________________________________________________________________


|:cuna| |:cunabbrev|
||:cuna[bbrev] {lhs}|| +
________________________________________________________________________________
Remove an abbreviation for Command-line mode. Same as [c]:una[bbreviate][c],
but for Command-line mode only.
________________________________________________________________________________


|:iuna| |:iunabbrev|
||:iuna[bbrev] {lhs}|| +
________________________________________________________________________________
Remove an abbreviation for Insert mode. Same as [c]:una[bbreviate][c], but for
Insert mode only.
________________________________________________________________________________


|:abc| |:abclear| +
||:abc[lear]||
________________________________________________________________________________
Remove all abbreviations.
________________________________________________________________________________


|:cabc| |:cabclear| +
||:cabc[lear]||
________________________________________________________________________________
Remove all abbreviations for Command-line mode.
________________________________________________________________________________


|:iabc| |:iabclear| +
||:iabc[lear]||
________________________________________________________________________________
Remove all abbreviations for Insert mode.
________________________________________________________________________________

section:User-defined{nbsp}commands[user-commands]

|:com| |:command|
||:com[mand]|| +
________________________________________________________________________________
List all user-defined commands.
________________________________________________________________________________

||:com[mand] {cmd}|| +
________________________________________________________________________________
List all user-defined commands that start with {cmd}.
________________________________________________________________________________


||:com[mand][!] [{attr}...] {cmd} {rep}|| +
________________________________________________________________________________
Define a new user command.  The name of the command is {cmd} and its relacement
text is {rep}.  The command's attributes are {attr}.  If a command with this
name already exists an error is reported unless [!] is specified, in which case
the command is redefined.  Unlike Vim, the command may start with a lowercase
letter.

The replacement text {rep} is scanned for escape sequences and these are
replaced with values from the user entered command-line.  The resulting string
is then executed as an Ex command.

The valid escape sequences are:
`----------`--------------------------------------------------------------------
*<args>*   The command arguments exactly as supplied
*<q-args>* The command arguments quoted as a single value in a manner suitable for expression evaluation
*<lt>*     A literal '<' character to allow for a literal copy of one of the escape sequences. E.g. <lt>args> will expand to a literal <args>
--------------------------------------------------------------------------------

Note: {attr} not implemented yet.
________________________________________________________________________________


|:comc| |:comclear| +
||:comc[lear]||
________________________________________________________________________________
Delete all user-defined commands.
________________________________________________________________________________


|:delc| |:delcommand|
||:delc[ommand] {cmd}|| +
________________________________________________________________________________
Delete the user-defined command {cmd}.
________________________________________________________________________________

// vim: set syntax=asciidoc:
