m-chrzan.xyz
aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2015-01-15 10:49:12 +0100
committerJason A. Donenfeld <Jason@zx2c4.com>2015-01-15 10:49:12 +0100
commitf924746af684d44abe1fd67eb681ed10438819a8 (patch)
tree9dc45e72e831a97278f5beed184260edc7e6a979
parent495f999fbaee0a217e7116a9d35e649a250ac0a5 (diff)
Add tejr's script
-rw-r--r--contrib/vim/noplaintext.vim46
1 files changed, 46 insertions, 0 deletions
diff --git a/contrib/vim/noplaintext.vim b/contrib/vim/noplaintext.vim
new file mode 100644
index 0000000..9493194
--- /dev/null
+++ b/contrib/vim/noplaintext.vim
@@ -0,0 +1,46 @@
+"
+" Prevent various Vim features from keeping the contents of pass(1) password
+" files (or any other purely temporary files) in plaintext on the system.
+"
+" Either append this to the end of your .vimrc, or install it as a plugin with
+" a plugin manager like Tim Pope's Pathogen.
+"
+" Author: Tom Ryder <tom@sanctum.geek.nz>
+"
+
+" Don't backup files in temp directories or shm
+if exists('&backupskip')
+ set backupskip+=/tmp/*,$TMPDIR/*,$TMP/*,$TEMP/*,*/shm/*
+endif
+
+" Don't keep swap files in temp directories or shm
+if has('autocmd')
+ augroup swapskip
+ autocmd!
+ silent! autocmd BufNewFile,BufReadPre
+ \ /tmp/*,$TMPDIR/*,$TMP/*,$TEMP/*,*/shm/*
+ \ setlocal noswapfile
+ augroup END
+endif
+
+" Don't keep undo files in temp directories or shm
+if has('persistent_undo') && has('autocmd')
+ augroup undoskip
+ autocmd!
+ silent! autocmd BufWritePre
+ \ /tmp/*,$TMPDIR/*,$TMP/*,$TEMP/*,*/shm/*
+ \ setlocal noundofile
+ augroup END
+endif
+
+" Don't keep viminfo for files in temp directories or shm
+if has('viminfo')
+ if has('autocmd')
+ augroup viminfoskip
+ autocmd!
+ silent! autocmd BufNewFile,BufReadPre
+ \ /tmp/*,$TMPDIR/*,$TMP/*,$TEMP/*,*/shm/*
+ \ setlocal viminfo=
+ augroup END
+ endif
+endif