Re: [PATCH v2 9/9] mergetools: vimdiff: use vimdiff for vimdiff3

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 22/08/06 09:49PM, Felipe Contreras wrote:
> 
> diff --git a/mergetools/vimdiff b/mergetools/vimdiff
> index 34373ad92c..daeb3cf1d0 100644
> --- a/mergetools/vimdiff
> +++ b/mergetools/vimdiff
> @@ -325,7 +325,7 @@ gen_cmd () {
>  	if ! echo "$LAYOUT" | grep ",\|/" >/dev/null
>  	then
>  		buf=$(get_buf "$LAYOUT")
> -		FINAL_CMD="-c \"set hidden diffopt-=hiddenoff | silent execute 'bufdo diffthis' | ${buf}b\""
> +		FINAL_CMD="-d -c \"set hidden diffopt-=hiddenoff diffopt-=closeoff | ${buf}b | only\""
>  		return
>  	fi

I found something strange while testing this:

This is the final command that is generated now:

    vim -d -c "set hidden diffopt-=hiddenoff diffopt-=closeoff | 4b | only" LOCAL BASE REMOTE MERGED 

Turns out that now colors "kind of work", but not completely:

    - The buffer that is shown by default ("MERGED") contains colors.
    - If you switch to the "LOCAL" buffer (":buffer 1") it also contains colors.
    - *But* if you switch to any of the other buffers ("BASE" with ":buffer 2"
      or "REMOTE" with ":buffer 3"), there are no colors.

For some reason, the command that was generated by my patch to v1, does work (?)
and all buffers contain diff colors:

    vimdiff -c "echo | silent 4b | set hidden | let tmp=bufnr('%') | silent bufdo diffthis | exe 'buffer '.tmp" LOCAL BASE REMOTE MERGED




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux