On Mon, July 29, 2013 14:59, Dimitar DIMITROV wrote: >> Hi all, >> >> Not sure why /\_.* matches at every line Vs only once... >> I would expect a single match at start of file because \_. matches any >> char including end of line and * is greedy >> /pattern\_.* does what I expect: it matches from pattern to end of file >> >> Dimitar > > An update/clarification on this: > > :%s/\_.* does correctly erase the whole file. What is actually incorrect > and I > didn't explain it well in my above statement is the behaviour of n, N. /, > :/ > So, n goes to every line Vs stay at the first byte of the file and never > move
I think this is correct. \_.* doesn't say, Vim should start matching only at the start of the file, so Vim will try matching at each line again. I think, Vim has always done this and restarted trying to match after linebreaks. If you want to keep matching at the start of the file, use the \%^ atom. regards, Christian -- -- 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 vim_dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.