Commit Graph

108 Commits

Author SHA1 Message Date
James McCoy
07fec22b0a Don't wipeout the current buffer if FileReadCmd failed
Signed-off-by: James McCoy <vega.james@gmail.com>
2012-10-26 16:05:18 -04:00
James McCoy
181ed597f2 Suppress "N more lines" message when editing a file
Signed-off-by: James McCoy <vega.james@gmail.com>
2012-10-26 16:05:17 -04:00
James McCoy
34c24a19e5 Only disable swapfile, undofile, and viminfo when editing a file.
Signed-off-by: James McCoy <vega.james@gmail.com>
2012-10-26 16:05:17 -04:00
James McCoy
31a84b0730 Indicate whether GPGInit/GPGDecrypt were invoked from BufReadCmd
Signed-off-by: James McCoy <vega.james@gmail.com>
2012-10-26 16:05:17 -04:00
James McCoy
39e54fbd96 Clear undo history as the last step of BufReadCmd
After opening a file, an immediate "u"/":undo" would remove the entire
contents of the buffer.  Even worse, this would not set 'modified', so there
would be no indication that wasn't the actual initial state of the buffer.

Discarding undo history for a buffer requires a few steps, including making a
change.  Luckily, a change is already being made (deleting the extra line left
after ":r !" the decrypted file), so discarding undo history can piggy-back on
top of that.

Signed-off-by: James McCoy <vega.james@gmail.com>
2012-10-26 16:05:17 -04:00
Alex Efros
f04de4883c added doautocmd BufWritePre 2012-10-26 16:05:17 -04:00
James McCoy
ebc86fca44 Document the g:GPGHomedir option
Signed-off-by: James McCoy <vega.james@gmail.com>
2012-10-26 16:05:17 -04:00
James McCoy
b470e4e11e Add support for specifying an alternate --homedir
Reported-By: Matt Callaway <matt.callaway@gmail.com>
Signed-off-by: James McCoy <vega.james@gmail.com>
2012-10-26 16:05:17 -04:00
James McCoy
cd8aa8d0ce Consolidate handling of system()/:execute calls
Signed-off-by: James McCoy <vega.james@gmail.com>
2012-10-26 16:05:17 -04:00
James Vega
571f46455e Resolve the filename when saving to follow symlinks.
Signed-off-by: James Vega <vega.james@gmail.com>
2012-10-26 16:05:17 -04:00
James Vega
904e392ae3 Initialize b:GPGRecipients with g:GPGDefaultRecipients
Signed-off-by: James Vega <vega.james@gmail.com>
2012-10-26 16:05:17 -04:00
James Vega
d645eb26cd Correctly handle the different keyid-format options
Signed-off-by: James Vega <vega.james@gmail.com>
2012-10-26 16:05:17 -04:00
James Vega
79a936311d Add g:GPGUsePipes variable to avoid saving unencrypted data to tempfiles
Signed-off-by: James Vega <vega.james@gmail.com>
2012-10-26 16:05:17 -04:00
James Vega
32c88feb43 Disable 'undofile' for the buffer, if the option exists
Signed-off-by: James Vega <vega.james@gmail.com>
2012-10-26 16:05:17 -04:00
James Vega
9e70b21d91 Update docs to show my takeover of gnupg.vim
Signed-off-by: James Vega <vega.james@gmail.com>
2012-10-26 16:05:00 -04:00
James Vega
f23c3c7643 Set 'noshelltemp' when executing gnupg
This is another step to prevent writing out sensitive information to disk.
Typically, when running an external command, Vim writes the command input (the
buffer in this case) to a file in a private temp directory.  When
'noshelltemp' is set and the system supports it, Vim uses pipes to the child
process to handle this instead.

Signed-off-by: James Vega <vega.james@gmail.com>
2012-10-26 16:04:34 -04:00
James Vega
a37434ab5d Bump minimum Vim version to 7.2
The two argument form of shellescape() is now being used, and that was
introduced in the pre-releases of 7.2.

Signed-off-by: James Vega <vega.james@gmail.com>
2012-10-26 16:04:34 -04:00
James Vega
6e178a6dd1 Check for our BufReadCmd to see if the plugin has been loaded.
Signed-off-by: James Vega <vega.james@gmail.com>
2012-10-26 16:04:34 -04:00
James Vega
bf67f5561a Refactor to use *WriteCmd/*ReadCmd autocommands.
With this change, we're able to properly handle errors from shell commands.
This means no more overwriting the original file when an incorrect password is
entered or some other similar scenario.

Also, move the handling of entering recipients to gpg itself instead of
mimicking that in Vim itself.

Signed-off-by: James Vega <vega.james@gmail.com>
2012-10-26 16:04:34 -04:00
Markus Braun
a8838d0e86 Updated credits. 2011-07-06 08:05:43 +02:00
Markus Braun
efd23b4440 Patch by Erik Remmelzwaal
Make gnupg.vim work better on win32
2011-07-06 08:05:42 +02:00
Markus Braun
9e7c686de5 Patch by James Vega
Make use of shellescape() and fnameescape() functions which better escape filenames than previous handmade calls to escape().
2011-07-06 08:05:42 +02:00
Markus Braun
05a3e4e1f6 Reworked patch by James Vega because I don't like "continue". 2011-07-06 08:05:42 +02:00
Markus Braun
82e70cf70a Patch by James Vega
Ignore duplicate recipients if the exactly same recipient is contained in multiple keyrings.
2011-07-06 08:05:42 +02:00
Markus Braun
1e5a796e0b Patch by James Vega
Default to g:GPGPreferArmor = 1 for "*.asc" files if g:GPGPreferArmor is not set by the user.
2011-07-06 08:05:42 +02:00
Markus Braun
f93f113717 Added remark about keychain and seahorse 2011-07-06 08:05:42 +02:00
Markus Braun
468b9fe59c Force sh/zsh/bash/dash compatible shellredir setting. 2011-07-06 08:05:42 +02:00
Markus Braun
d48f7364aa Renamed GPGExec to commandline 2011-07-06 08:05:41 +02:00
Markus Braun
6d50997fff Use '/bin/sh' instead of 'sh' as shell 2011-07-06 08:05:41 +02:00
Markus Braun
f2e0a30de8 Added more debug informations 2011-07-06 08:05:41 +02:00
Markus Braun
616192b236 Debug messages 2011-07-06 08:05:41 +02:00
Markus Braun
e53b79872a Show an error if the buffer is not prepared for writing an encrypted file. 2011-07-06 08:05:41 +02:00
Markus Braun
062524c107 Code beautification 2011-07-06 08:05:41 +02:00
Markus Braun
b9a0a498d5 Prefix "GnuPG: " to all debug messages 2011-07-06 08:05:41 +02:00
Markus Braun
16412c1b18 Add more info about a key
Show ID and creation time when viewing, editing or choosing a recipient (suggested by Curt Sampson)
2011-07-06 08:05:40 +02:00
Markus Braun
b932a58be9 Another documentation change. 2011-07-06 08:05:40 +02:00
Markus Braun
8ae4e49736 Just another useless change to update revision date. 2011-07-06 08:05:40 +02:00
Markus Braun
a817a3bfa1 Tim Swast patch for signed files 2011-07-06 08:05:40 +02:00
Markus Braun
da53fc98f0 Added section "Known Issues:" to documentation. 2011-07-06 08:05:40 +02:00
Markus Braun
b426430ff8 This is just a stupid change, more ore less to update Id and Revision keywords 2011-07-06 08:05:40 +02:00
Markus Braun
666d1e10f5 Unix/windows specific settings done right :-) 2011-07-06 08:05:40 +02:00
Markus Braun
54faa743b2 Correct error in redirection. 2011-07-06 08:05:40 +02:00
Markus Braun
12ac7f9f03 Use has("unix") to determine between windows and unix. 2011-07-06 08:05:39 +02:00
Markus Braun
478aeb9196 Correctly use backticks for determining the tty 2011-07-06 08:05:39 +02:00
Markus Braun
aecfdde11d Make sure that sensitive data is never written unencrypted.
It is better to write an empty buffer to the file instead.
2011-07-06 08:05:39 +02:00
Markus Braun
6a0bdcf05c added function to cleanup on leaving vim
For now create a new, empty buffer before leaving to wipe out data on console.
2011-07-06 08:05:39 +02:00
Markus Braun
9425fd6754 Code beautification 2011-07-06 08:05:39 +02:00
Markus Braun
c4b203d17c Patch from Sebastian Luettich
Fix issue with symmetric encryption and set recipients.
2011-07-06 08:05:39 +02:00
Markus Braun
a3f589f5e2 Make sure the variable "g:GPGDefaultRecipients" exists 2011-07-06 08:05:39 +02:00
Markus Braun
9278fb2d33 Added support for default recipients. 2011-07-06 08:05:39 +02:00