* epa.el (epa-select-keys): Renamed from epa-ask-keys; use
[elisp/epg.git] / epa-dired.el
index 362a7ac..9b2dc44 100644 (file)
   (define-key dired-mode-map ":" 'epa-dired-prefix))
 
 (defun epa-dired-decrypt-file (file)
-  (let ((context (epg-make-context)))
+  (let* ((default-name (file-name-sans-extension file))
+        (plain (read-file-name
+                (concat "To file (default "
+                        (file-name-nondirectory default-name)
+                        ") ")
+                (file-name-directory default-name)
+                default-name))
+        (context (epg-make-context)))
     (message "Decrypting %s..." (file-name-nondirectory file))
-    (epg-decrypt-file context file (file-name-sans-extension file))
+    (epg-decrypt-file context file plain)
     (message "Decrypting %s...done" (file-name-nondirectory file))))
 
 (defun epa-dired-do-decrypt ()
       (setq file-list (cdr file-list)))
     (revert-buffer)))
 
-(defun epa-dired-encrypt-file (keys file)
+(defun epa-dired-encrypt-file (file)
   (let ((cipher (concat file ".gpg"))
-       (context (epg-make-context)))
+       (context (epg-make-context))
+       (keys (epa-select-keys "Select recipents for encryption.
+If no one is selected, symmetric encryption will be performed.  ")))
     (message "Encrypting %s..." (file-name-nondirectory file))
     (epg-encrypt-file context
                      file
   (interactive)
   (let ((file-list (dired-get-marked-files)))
     (while file-list
-      (epa-ask-keys "Select recipents for encryption.
-If no one is selected, symmetric encryption will be performed.  "
-                   #'epa-dired-encrypt-file nil
-                   (expand-file-name (car file-list)))
+      (epa-dired-encrypt-file (car file-list))
       (setq file-list (cdr file-list)))))
 
 (provide 'epa-dired)