Hi marco!

On Do, 03 Jul 2014, marco restelli wrote:

> 2014-07-03 11:40 GMT+0200, Christian Brabandt <[email protected]>:
> > Am 2014-07-03 11:18, schrieb marco restelli:
> >> 2014-07-03 11:08 GMT+0200, marco restelli <[email protected]>:
> >>> 2014-07-03 10:58 GMT+0200, marco restelli <[email protected]>:
> >>>> Hi all,
> >>>>    this seems a simple question but I can not find any reference: is
> >>>> it possible to have a case insensitive comparison with vimdiff?
> >>>
> >>> OK, I think it is
> >>>
> >>> set diffopt+=icase
> >>
> >> Sorry for keeping replying to my own thread, but now there is another
> >> detail that I don't understand. Consider the following example, having
> >> set diffopt=filler,icase:
> >>
> >> 1) if I have two buffers with one line each:
> >> buffer 1 ->  abc this IS a TEST
> >> buffer 2 ->  this IS a TEST
> >>
> >> the characters abc in buffer 1 are highlighted (this is what I would
> >> expect)
> >>
> >> 2) same two buffers, with
> >> buffer 1 ->  abc this IS a TEST
> >> buffer 2 ->  this is a test
> >>
> >> now the complete lines are highlighted in both buffers, while I would
> >> like to have highlighted only abc, as in the first case.
> >>
> >> Is it possible to have 2) behave exactly like 1), highlighting only
> >> abs, regardless of the case of the remaining words?
> >
> > This is probably caused by the diff command detecting it as 1 deleted
> > line
> > and 1 added line instead of 1 changed line.
> >
> > I don't think, there is much Vim can do here.
> 
> OK, thank you Christian, then I think the best solution is to copy the
> two files, pass both of them to lowercase with u in visual mode and
> use the standard diff.

If you don't mind changing your buffer, create a custom filterwritepre 
command that filters your buffer through tr (works only on unix or 
within a cygwin environment, e.g. something like this:

fu! ConvertLower()
    %!tr "[A-Z]" "[a-z]"
endfu

aug MyDiff
    au!
    au FilterWritePre file* call ConvertLower()
aug end

Adjust the pattern file* to your filenames. If you are on windows,
replace the tr part by 
:%s/.*/\L&/

Best,
Christian
-- 
Wir sind begieriger, fremde Menschen zu observieren und auszuspähen
als tägliche und nahe.
                -- Jean Paul

-- 
-- 
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/d/optout.

Reply via email to