On 2013-07-12 19:05, Paul Isambert wrote:
> Chris Lott <[email protected]> a écrit:
> > I have a document with the following kind of text:
> >
> > ## 3. foo
> >
> > various text here
> >
> > ## 1. foo
> >
> > more text here
> >
> > What I would like to do is search for all the headers (## X. etc)
> > and replace them with the proper sequential numbering. How do I
> > approach this?
>
> I’m sure some “vizard” can do the same without using a counter like
> a:count (and, of course, with :substitute).
I'm pretty sure it requires a counter, but it can be done with
a :substitute command and a helper function:
function! Add()
let b:counter += 1
return b:counter
endfunction
:let b:counter=0 | %s/## \zs\d\+\ze\./\=Add()
This also give you pretty easy access to change the starting index,
and if you wanted to pass an increment-amount to Add(), it could be
done.
-tim
--
--
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 [email protected].
For more options, visit https://groups.google.com/groups/opt_out.