"Regexp which matches filenames to be encrypted with GnuPG."
:type 'regexp
:group 'epa-file)
+
+(defvar epa-file-handler
+ (cons epa-file-name-regexp 'epa-file-handler))
(defvar epa-file-passphrase-alist nil)
(setq string
(epg-encrypt-string
context
- (encode-coding-string (buffer-string) coding-system)
- (mapcar (lambda (key)
- (epg-sub-key-id (car (epg-key-sub-key-list key))))
- (unless (assoc file epa-file-passphrase-alist)
+ (if (stringp start)
+ (encode-coding-string start coding-system)
+ (encode-coding-string (buffer-substring start end)
+ coding-system))
+ (unless (assoc file epa-file-passphrase-alist)
(epa-select-keys
"Select recipents for encryption.
-If no one is selected, symmetric encryption will be performed. ")))))
+If no one is selected, symmetric encryption will be performed. "))))
(error
(if (setq entry (assoc file epa-file-passphrase-alist))
(setcdr entry nil))
(message "Wrote %s" buffer-file-name))))
(put 'write-region 'epa-file 'epa-file-write-region)
+;;;###autoload
+(defun epa-file-enable ()
+ (interactive)
+ (if (memq epa-file-handler file-name-handler-alist)
+ (message "`epa-file' already enabled")
+ (setq file-name-handler-alist
+ (cons epa-file-handler file-name-handler-alist))
+ (message "`epa-file' enabled")))
+
+;;;###autoload
+(defun epa-file-disable ()
+ (interactive)
+ (if (memq epa-file-handler file-name-handler-alist)
+ (progn
+ (setq file-name-handler-alist
+ (delq epa-file-handler file-name-handler-alist))
+ (message "`epa-file' disabled"))
+ (message "`epa-file' already disabled")))
+
(provide 'epa-file)
;;; epa-file.el ends here