Wednesday, February 11, 2015

Re: obtain current visual selection

Le mardi 10 février 2015 09:22:35 UTC+1, Enno a écrit :
> Hello,
>
> There is a thread on StackOverflow labelled
>
> "How to get visually selected text in VimScript"
>
> The naive and stable approach would be
>
> let old_reg = @v
> normal! gv"vy
> let raw_search = @v
> let @v = old_reg
> return raw_search
>
> but that only works if `set nosecure`. If `set secure` then
> the functions become involved. I posted my own take at
>
> http://stackoverflow.com/questions/1533565/how-to-get-visually-selected-text-in-vimscript/28398359#28398359
>
> but it handles neither block-wise selections nor multibyte columns. A function that supports both is for example given at
>
> https://github.com/haya14busa/vim-asterisk/blob/4fda3a4d90926512fbb10eda8b7b0491c650eb5e/autoload/asterisk.vim#L163
>
> Is there a simple solution at all?
>
> Enno

You are right. Thanks for your patience.

I cannot reproduce this dependency on the function
residing in the autoload folder. So in the end the
explanation given at :help E523 was a red herring.

I erroneously thought of <expr> mappings and expression register
mappings as equivalent but found the former more easily readable.

I don't know if there are situations when an <expr> mapping cannot
be reproduced by an equivalent expression register mapping, or if
there are other instances when the normal command is impossible.

--
--
You received this message from the "vim_use" 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_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vim_use+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

No comments:

Post a Comment