Wednesday, June 8, 2016

Re: Using ^ (match start of line) and \% (match column) together

2016-06-08 11:40 GMT+03:00 Nicola <nvitacolonna@gmail.com>:
> On 2016-06-07 20:47:07 +0000, Nikolay Aleksandrovich Pavlov said:
>
>> 2016-06-07 22:45 GMT+03:00 Nicola <nvitacolonna@gmail.com>:
>>>
>>> The following patterns both match up to column 17 included:
>>>
>>> /.*\%17v
>>> /.*\%17v.
>>>
>>> If ^ is added, the two are no more equivalent:
>>>
>>> /^.*\%17v <-- matches up to column 16
>>> /^.*\%17v. <-- matches up to column 17
>>
>>
>> You are treating this wrong. First original patterns matches up to
>> column 16 (inclusive) *and* has a zero-width match after column 16
>> which (as any other zero-width match) makes &hlsearch highlight column
>> 17. Second original pattern matches up to column 17 (inclusive).
>>
>> I.e. first original pattern has *two* matches (one of which uses the
>> fact that `.*` may match zero characters), second has *one*. Putting
>> `^` at the start rejects one of the matches.
>
>
> Crystal clear now. I was fooled by the help, which states:
>
> To match the text up to column 17:
> /.*\%17v
> Column 17 is included, because that's where the "\%17v" matches,
> even though this is a /zero-width match. Adding a dot to match the
> next character has the same result:
> /.*\%17v.
>
> The last sentence led me to think that the two are equivalent.

I would say that help should be fixed, zero-width match at column N
does not ever include column N.

>
> Thanks!
>
> Nicola
>
>
> --
> --
> 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.

--
--
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