]> ruderich.org/simon Gitweb - config/dotfiles.git/commitdiff
vimrc: Add :DiffOrig command.
authorSimon Ruderich <simon@ruderich.org>
Fri, 2 Dec 2011 14:22:05 +0000 (15:22 +0100)
committerSimon Ruderich <simon@ruderich.org>
Fri, 2 Dec 2011 14:22:05 +0000 (15:22 +0100)
vimrc

diff --git a/vimrc b/vimrc
index c39fa3c3b720e427d2fa7e8de76207d46174d019..7aa91ce35c6687d787652ba4ab377e50ca176d33 100644 (file)
--- a/vimrc
+++ b/vimrc
@@ -493,7 +493,7 @@ if has('autocmd')
 endif
 
 
-" CUSTOM FUNCTIONS
+" CUSTOM FUNCTIONS AND COMMANDS
 
 if has('eval')
 " New text-objects ii and ai to work on text with the same indentation. Thanks
@@ -538,4 +538,21 @@ if has('eval')
         endif
     endfunction
 
+" Convenient command to see the difference between the current buffer and the
+" file it was loaded from, thus the changes you made. Thanks to the
+" vimrc_example.vim file in Vim's source. Modified to use the same filetype
+" for the diffed file than the filetype for the original file.
+    if !exists(":DiffOrig")
+        command DiffOrig
+            \ let s:diff_orig_filetype = &filetype
+            \ | vertical new
+            \ | let &filetype = s:diff_orig_filetype
+            \ | unlet s:diff_orig_filetype
+            \ | set buftype=nofile
+            \ | read ++edit #
+            \ | 0d_
+            \ | diffthis
+            \ | wincmd p
+            \ | diffthis
+    endif
 endif