Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 30th, 2012  |  syntax: None  |  size: 0.75 KB  |  hits: 12  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. taking diff between two named files in vim
  2. "diff between foo.txt and bar.txt found"
  3.        
  4. :edit file1.txt
  5.  :vert diffsplit file2.txt
  6.        
  7. :tabedit file1.txt
  8.  :vert diffsplit file2.txt
  9.        
  10. diffprogram | grep -w '^diff between' | grep 'found$' |
  11. while read diff between file1 and file2 found;
  12. do
  13.     gvim -d "$file1" "$file2"
  14. done
  15.        
  16. gvim --servername GVIM --remote-silent +"tabedit $file1" +"vert diffsplit $file2"
  17.        
  18. function s:OpenDiff()
  19.     let line=getline('.')
  20.     let match=matchlist(line, 'v^ {4}"diff between (.{-}) and (.{-}) found" $')[1:2]
  21.     if empty(match)
  22.         throw 'Incorrect line:' line
  23.     endif
  24.     execute 'tabedit'   fnameescape(match[0])
  25.     execute 'diffsplit' fnameescape(match[1])
  26. endfunction
  27. nnoremap ,od :<C-u>call <SID>OpenDiff()<CR>