]> ruderich.org/simon Gitweb - config/dotfiles.git/commitdiff
vimrc: Display a warning when editing auto-generated files.
authorSimon Ruderich <simon@ruderich.org>
Mon, 15 Oct 2012 20:09:59 +0000 (22:09 +0200)
committerSimon Ruderich <simon@ruderich.org>
Mon, 15 Oct 2012 20:09:59 +0000 (22:09 +0200)
Searches for "do not edit" (ignoring the case).

vimrc

diff --git a/vimrc b/vimrc
index 96fb449245b772e83746e2f0b5f2d6e168a9f097..3b77e8efcab1cf5c6223455b394e036c2f272693 100644 (file)
--- a/vimrc
+++ b/vimrc
@@ -836,6 +836,23 @@ if has('autocmd')
             autocmd InsertLeave * set   ignorecase
         endif
 
+" Display a warning when editing a file which contains "do not edit" (ignoring
+" the case, \c), for example template files which were preprocessed or
+" auto-generated files. Especially useful when the header is not displayed on
+" the first screen, e.g. when the old position is restored. Not for vimrc
+" though.
+        function! s:SearchForDoNotEditHeader()
+            if search('\cdo not edit', 'n') == 0
+                    \ || expand('<afile>:t') =~# '^.\?vimrc$'
+                return
+            endif
+
+            echohl WarningMsg
+            echo 'Do not edit this file! (Maybe a template file.)'
+            echohl None
+        endfunction
+        autocmd BufRead * call <SID>SearchForDoNotEditHeader()
+
 " AFTER/FTPLUGIN AUTO COMMANDS
 
 " Disable spell checking for files which don't need it.