On Sunday, October 4, 2015 at 11:38:26 PM UTC+2, ZyX wrote:
> 2015-10-05 0:02 GMT+03:00 glts <[email protected]>:
> > 'getreg(regname, 1, 1)' returns different lists for the same selection
> > in characterwise and linewise mode. Why?
> >
> > To reproduce:
> > - Do 'Vy' on one line of text, then run :echo getreg('"', 1, 1).
> > The result is ['text'].
> > - Do '0v$y' on one line of text, then again run :echo getreg('"', 1, 1).
> > The result is ['text', ''].
>
> It is not same selection. In the second case you yank text and
> trailing EOL. In the first case you are in linewise mode, so you can’t
> (and don’t need to because it is covered by the mode flag) yank
> trailing EOL.
>
> If you think this should not happen then answer the question “how can
> script writer distinguish between the inclusive and exclusive
> selection yank results given that they behave differently when
> pasting” (see :h 'selection', alternative to setting this option is
> moving one character back after `$` motion).
Don't 'Vy' and '0v$y' put the same stuff in the register? At least
judging by the output of :reg and the value of 'getreg('"')':
Vy:echo getreg('"') gives "text\n"
0v$y:echo getreg('"') gives "text\n"
But the output of 'getreg('"', 1, 1)' is different. That's what I find
unexpected.
I understand it was you who implemented the feature. Perhaps it would be
good to document this behaviour and also explain the motivation there. I
admit that I don't quite understand it and would very much appreciate
some clarification in the docs (I also didn't understand your remark
about the 'selection' option -- how is that related?).
Thanks,
--
David
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.