Jump to horizontal diff on "index ..." lines
This commit is contained in:
parent
559425cafa
commit
7390538db0
@ -1653,6 +1653,13 @@ function! s:GF(mode) abort
|
|||||||
elseif getline('.') =~# '^diff --git \%(a/.*\|/dev/null\) \%(b/.*\|/dev/null\)'
|
elseif getline('.') =~# '^diff --git \%(a/.*\|/dev/null\) \%(b/.*\|/dev/null\)'
|
||||||
let dref = matchstr(getline('.'),'\Cdiff --git \zs\%(a/.*\|/dev/null\)\ze \%(b/.*\|/dev/null\)')
|
let dref = matchstr(getline('.'),'\Cdiff --git \zs\%(a/.*\|/dev/null\)\ze \%(b/.*\|/dev/null\)')
|
||||||
let ref = matchstr(getline('.'),'\Cdiff --git \%(a/.*\|/dev/null\) \zs\%(b/.*\|/dev/null\)')
|
let ref = matchstr(getline('.'),'\Cdiff --git \%(a/.*\|/dev/null\) \zs\%(b/.*\|/dev/null\)')
|
||||||
|
let dcmd = 'Gdiff'
|
||||||
|
|
||||||
|
elseif getline('.') =~# '^index ' && getline(line('.')-1) =~# '^diff --git \%(a/.*\|/dev/null\) \%(b/.*\|/dev/null\)'
|
||||||
|
let line = getline(line('.')-1)
|
||||||
|
let dref = matchstr(line,'\Cdiff --git \zs\%(a/.*\|/dev/null\)\ze \%(b/.*\|/dev/null\)')
|
||||||
|
let ref = matchstr(line,'\Cdiff --git \%(a/.*\|/dev/null\) \zs\%(b/.*\|/dev/null\)')
|
||||||
|
let dcmd = 'Gdiff!'
|
||||||
|
|
||||||
elseif line('$') == 1 && getline('.') =~ '^\x\{40\}$'
|
elseif line('$') == 1 && getline('.') =~ '^\x\{40\}$'
|
||||||
let ref = getline('.')
|
let ref = getline('.')
|
||||||
@ -1680,7 +1687,7 @@ function! s:GF(mode) abort
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
if exists('dref')
|
if exists('dref')
|
||||||
return s:Edit(a:mode,ref) . '|Gdiff '.s:fnameescape(dref)
|
return s:Edit(a:mode,ref) . '|'.dcmd.' '.s:fnameescape(dref)
|
||||||
elseif ref != ""
|
elseif ref != ""
|
||||||
return s:Edit(a:mode,ref)
|
return s:Edit(a:mode,ref)
|
||||||
endif
|
endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user