cmdline: CTRL-R: Omit trailing <CR>.

The "technically correct" interpretation is to execute the first line
that is seen (and this is what happens on middle-click paste in Vim).
^M is only intended to "defuse" the newline, so the user can review it.

The parent commit changed the behavior to insert <Space> between lines,
but that's a higher-risk change: it is arguably possible that some user
*wants* the literal ^M chars when e.g. assigning to a register:
    :let @a='<C-R>b'

To avoid that risk, keep the old behavior and only omit the last ^M.
This makes `yy:<C-R>0` nicer at no cost.
This commit is contained in:
Justin M. Keyes
2017-02-18 23:15:27 +01:00
parent 308ccb6f5e
commit baab49ee89
4 changed files with 15 additions and 16 deletions

View File

@@ -238,8 +238,7 @@ newly allocated memory all over the place) and fail on types which cannot be
coerced to strings. See |id()| for more details, currently it uses
`printf("%p", {expr})` internally.
|c_CTRL-R| pasting a non-special register into the |cmdline| separates lines
by <Space> instead of <CR>.
|c_CTRL-R| pasting a non-special register into |cmdline| omits the last <CR>.
==============================================================================
5. Missing legacy features *nvim-features-missing*