aboutsummaryrefslogtreecommitdiff
path: root/autoload/redact_pass.vim
diff options
context:
space:
mode:
Diffstat (limited to 'autoload/redact_pass.vim')
-rw-r--r--autoload/redact_pass.vim24
1 files changed, 24 insertions, 0 deletions
diff --git a/autoload/redact_pass.vim b/autoload/redact_pass.vim
new file mode 100644
index 0000000..8703213
--- /dev/null
+++ b/autoload/redact_pass.vim
@@ -0,0 +1,24 @@
+" Check whether we should set redacting options or not
+function! redact_pass#CheckArgsRedact() abort
+
+ " Ensure there's one argument and it's the matched file
+ if argc() != 1
+ \ || fnamemodify(argv(0), ':p') !=# expand('<afile>:p')
+ return
+ endif
+
+ " Disable all the leaky options globally
+ set nobackup
+ set nowritebackup
+ set noswapfile
+ set viminfo=
+ if has('persistent_undo')
+ set noundofile
+ endif
+
+ " Tell the user what we're doing so they know this worked, via a message and
+ " a global variable they can check
+ echomsg 'Editing password file--disabled leaky options!'
+ let g:redact_pass_redacted = 1
+
+endfunction