+ gvimmerge: opens a gvim with some tabs to resolve conflicts
Change-Id: I5d797655d5f7f316f25acf13c9e9295fd3599893
This commit is contained in:
parent
663a18f737
commit
032cdfc6c9
@ -60,8 +60,10 @@ DelAllMultipleEmptyLines vimsuite.txt /*DelAllMultipleEmptyLines*
|
||||
DelAllMultipleSameLines vimsuite.txt /*DelAllMultipleSameLines*
|
||||
DelAllTrailingWhitespace vimsuite.txt /*DelAllTrailingWhitespace*
|
||||
DirDiff vimsuite.txt /*DirDiff*
|
||||
GVimMerge vimsuite.txt /*GVimMerge*
|
||||
GrepDir vimsuite.txt /*GrepDir*
|
||||
GrepFiles vimsuite.txt /*GrepFiles*
|
||||
Merge vimsuite.txt /*Merge*
|
||||
Project vimsuite.txt /*Project*
|
||||
Projekt vimsuite.txt /*Projekt*
|
||||
Reformat vimsuite.txt /*Reformat*
|
||||
|
@ -179,6 +179,14 @@ Alle Zeilen, die l
|
||||
*:InsertCHeader*
|
||||
:InsertCHeader Fügt das Template ... ein
|
||||
|
||||
*GVimMerge* *Merge*
|
||||
gvimmerge Tool zur Unterstützung beim mergen
|
||||
|
||||
Um GVim als Tool zum Mergen für eine Versionsverwaltung zu verwenden kann
|
||||
dieser dort als Merge-Tool eingetragen werden. Der Eintrag sollte
|
||||
folgendermaßen ausshen:
|
||||
.../vimsuite/vimfiles.stefan/tools/gvimmerge.bat <base> <mine> <theirs> <merged>
|
||||
|
||||
==============================================================================
|
||||
*cscope_macros*
|
||||
|
||||
|
17
vimfiles.stefan/tools/gvimmerge.bat
Normal file
17
vimfiles.stefan/tools/gvimmerge.bat
Normal file
@ -0,0 +1,17 @@
|
||||
@echo off
|
||||
setlocal
|
||||
set vimdir=%~dp0..\..\..
|
||||
set vimprg=%vimdir%\vim74\gvim.exe
|
||||
set vimscript=%~dp0gvimmerge.vim
|
||||
set base=%1
|
||||
set mine=%2
|
||||
set theirs=%3
|
||||
set merged=%4
|
||||
|
||||
if not exist %vimprg% (
|
||||
echo gvim.exe nicht gefunden
|
||||
)
|
||||
|
||||
set cmd=%vimprg% -f -R %base% %mine% %theirs% %merged% -S %vimscript%
|
||||
echo %cmd%
|
||||
%cmd%
|
31
vimfiles.stefan/tools/gvimmerge.vim
Normal file
31
vimfiles.stefan/tools/gvimmerge.vim
Normal file
@ -0,0 +1,31 @@
|
||||
function s:OpenDiffTab(left, right)
|
||||
tabnew
|
||||
execute 'buffer' a:left
|
||||
diffthis
|
||||
execute 'rightbelow vertical sbuffer' a:right
|
||||
diffthis
|
||||
endfunction
|
||||
|
||||
function s:FixLineendings()
|
||||
if !exists('b:reload_dos') && !&binary && &ff=='unix' && (0 < search('\r$', 'nc'))
|
||||
edit ++ff=dos
|
||||
echom 'fixed lineendings'
|
||||
let b:reload_dos = 1
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function s:OpenMergeTabs()
|
||||
set columns=200
|
||||
call s:OpenDiffTab(1, 4)
|
||||
call s:FixLineendings()
|
||||
setlocal noreadonly modifiable
|
||||
call s:OpenDiffTab(2, 4)
|
||||
call s:OpenDiffTab(3, 4)
|
||||
call s:OpenDiffTab(1, 2)
|
||||
call s:OpenDiffTab(1, 3)
|
||||
call s:OpenDiffTab(2, 3)
|
||||
tabfirst
|
||||
tabclose
|
||||
endfunction
|
||||
|
||||
call s:OpenMergeTabs()
|
@ -156,7 +156,11 @@ nnoremap gb :call GotoLastFile()<CR>
|
||||
" -----------
|
||||
set sessionoptions=blank,buffers,curdir,folds,help,resize,tabpages,winsize
|
||||
" open window size
|
||||
autocmd GUIEnter * winsize 100 60
|
||||
if &diff
|
||||
autocmd GUIEnter * set lines=60 columns=200
|
||||
else
|
||||
autocmd GUIEnter * set lines=60 columns=100
|
||||
endif
|
||||
" read and write files automatically
|
||||
set autoread
|
||||
set autowrite
|
||||
|
Loading…
x
Reference in New Issue
Block a user