Tuesday, October 9, 2012

Re: How to "destructive vimdiff" ;) two files ?

On Tuesday, October 9, 2012 8:10:29 AM UTC-5, Christian Brabandt wrote:
>
> You need to loop over each line and get the diff_hlID() for that position.
>
> Each line, where diff_hlID() returns zero you need to delete.
>
>
>
> Of course, you can do it in one step ;)
>
>
>
> exe ':g/'. join(map(filter(range(1,line('$')), '!diff_hlID(v:val, 0)'), '
>
> ''\%''.v:val."l"'), '\|'). '/d'
>
>
>
> But, this works only once, you can't do this for all buffers at the
>
> same time, since after you changed the first buffer the syntax highlighting
>
> for the other will be completely different and there will be no more
>
> items being in common at the following buffers.
>

But, you could next undo the (single) change in the first buffer, repeat the process on the second buffer, then redo the change in the first buffer.

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

No comments:

Post a Comment