2017-11-02 03:03:24 +01:00
|
|
|
= Registers
|
2016-02-03 18:15:35 +01:00
|
|
|
|
2017-11-02 03:03:24 +01:00
|
|
|
== Description
|
2016-02-03 18:15:35 +01:00
|
|
|
|
2016-02-10 22:03:49 +01:00
|
|
|
Registers are named lists of text -instead of simply text- in order to interact
|
2017-05-11 20:42:09 +02:00
|
|
|
well with multiselection. They are used for various purposes, like storing
|
2016-12-17 17:43:45 +01:00
|
|
|
the last yanked text, or the captured groups associated with the selections.
|
2016-02-03 18:15:35 +01:00
|
|
|
|
2017-11-02 03:03:24 +01:00
|
|
|
== Interacting
|
|
|
|
|
2016-02-03 18:15:35 +01:00
|
|
|
*<c-r><c>*::
|
2017-11-02 10:37:39 +01:00
|
|
|
when in insert mode or in a prompt, insert the value stored in the
|
|
|
|
*c* register (single character)
|
2016-02-03 18:15:35 +01:00
|
|
|
|
|
|
|
*"<c>*::
|
2017-11-02 10:37:39 +01:00
|
|
|
in normal mode, select the *<c>* register (single character)
|
2016-02-03 18:15:35 +01:00
|
|
|
|
2017-11-02 03:03:24 +01:00
|
|
|
== Alternate names
|
2016-10-09 22:32:36 +02:00
|
|
|
|
2017-04-21 12:32:47 +02:00
|
|
|
Non alphanumeric registers have an alternative name that can be used
|
2016-10-09 22:32:36 +02:00
|
|
|
in contexts where only alphanumeric identifiers are possible.
|
|
|
|
|
2017-11-02 03:03:24 +01:00
|
|
|
== Default registers
|
|
|
|
|
2018-10-27 17:01:15 +02:00
|
|
|
All normal-mode commands using a register default to a specific one if not specified:
|
2016-02-02 20:15:12 +01:00
|
|
|
|
2016-10-09 22:32:36 +02:00
|
|
|
*"* (dquote)::
|
2018-10-27 17:01:15 +02:00
|
|
|
default delete / copy / paste / replace register, used by:
|
|
|
|
*c*, *d*, *y*, *p*, *<a-p>*, *<P>*, *<a-P>*, *R* and *<a-R>*
|
2016-02-03 18:15:35 +01:00
|
|
|
|
2016-10-09 22:32:36 +02:00
|
|
|
*/* (slash)::
|
2018-10-27 17:01:15 +02:00
|
|
|
default search / regex register, used by:
|
|
|
|
*/*, *<a-/>*, *?*, *<a-?>*, *n*, *<a-n>*, *N*, *<a-N>*, ***, *<a-*>*,
|
|
|
|
*s*, *S*, *<a-k>* and *<a-K>*
|
2016-02-03 18:15:35 +01:00
|
|
|
|
2016-10-09 22:32:36 +02:00
|
|
|
*@* (arobase)::
|
2018-10-27 17:01:15 +02:00
|
|
|
default macro register, used by:
|
|
|
|
*q* and *Q*
|
2016-02-03 18:15:35 +01:00
|
|
|
|
2016-10-09 22:32:36 +02:00
|
|
|
*^* (caret)::
|
2018-10-27 17:01:15 +02:00
|
|
|
default mark register, used by:
|
|
|
|
*z*, *<a-z>*, *Z* and *<a-Z>*
|
2016-02-03 18:15:35 +01:00
|
|
|
|
2016-10-09 22:32:36 +02:00
|
|
|
*|* (pipe)::
|
2018-10-27 17:01:15 +02:00
|
|
|
default shell command register, used by commands that spawn a subshell:
|
|
|
|
*|*, *<a-|>*, *!* and *<a-!>*
|
2016-02-18 13:57:23 +01:00
|
|
|
|
2017-11-02 03:03:24 +01:00
|
|
|
== Special registers
|
|
|
|
|
2016-02-10 22:03:49 +01:00
|
|
|
Some registers are not general purposes, they cannot be written to, but they
|
|
|
|
contain some special data
|
2016-02-02 20:15:12 +01:00
|
|
|
|
2016-10-09 22:32:36 +02:00
|
|
|
*%* (percent)::
|
2017-11-02 10:37:39 +01:00
|
|
|
current buffer name
|
2016-02-03 18:15:35 +01:00
|
|
|
|
2016-10-09 22:32:36 +02:00
|
|
|
*.* (dot)::
|
2017-11-02 10:37:39 +01:00
|
|
|
current selection contents
|
2016-02-03 18:15:35 +01:00
|
|
|
|
2016-10-11 00:19:23 +02:00
|
|
|
*#* (hash)::
|
2017-11-02 10:37:39 +01:00
|
|
|
selection indices (first selection has 1, second has 2, ...)
|
2016-03-16 13:29:43 +01:00
|
|
|
|
2016-10-09 22:32:36 +02:00
|
|
|
*_* (underscore)::
|
2017-11-02 10:37:39 +01:00
|
|
|
null register, always empty
|
2016-03-31 10:19:33 +02:00
|
|
|
|
2017-07-10 22:05:21 +02:00
|
|
|
*:* (colon)::
|
2017-11-02 10:37:39 +01:00
|
|
|
last entered command
|
2017-07-10 22:05:21 +02:00
|
|
|
|
2017-11-02 03:03:24 +01:00
|
|
|
== Integer registers
|
|
|
|
|
2016-03-16 13:29:43 +01:00
|
|
|
Registers *1* to *9* hold the grouped sub-matches of the regular
|
|
|
|
expression used to make the last selection. Example: applying the
|
|
|
|
following regular expression to the date of the day would put the day of
|
|
|
|
the week in register *1*, the month in register *2*, and the day of the
|
|
|
|
month in register *3*, but select the entire date:
|
|
|
|
|
|
|
|
--------------------
|
|
|
|
(\w+) (\w+) (\d+) .+
|
|
|
|
--------------------
|