aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Tom Willemsen2012-07-06 00:30:15 +0200
committerGravatar Tom Willemsen2012-07-06 00:30:15 +0200
commit198a920f7b2ec22f77aeb8259a01d75b47edd3e0 (patch)
tree100b6008ce80320673f183624c56b1f0e9f7c512
parentb1e4dfbaab7fb3975716871f8cddd76d495d83ca (diff)
downloaddispass.el-198a920f7b2ec22f77aeb8259a01d75b47edd3e0.tar.gz
dispass.el-198a920f7b2ec22f77aeb8259a01d75b47edd3e0.zip
Add ability to add label to file
* dispass.el (dispass-labels-mode-map): Add direct keybinding for `dispass-add-label' so it is not required to always call `dispass-create'. (dispass-create): Call `dispass-add-label' in order to automatically insert newly created labels. (dispass-add-label): Adds a new label definition at the end of `dispass-file' and when `major-mode' is `dispass-labels-mode' reverts the buffer to show the changes.
-rw-r--r--dispass.el13
1 files changed, 12 insertions, 1 deletions
diff --git a/dispass.el b/dispass.el
index 32f96a3..b02f354 100644
--- a/dispass.el
+++ b/dispass.el
@@ -120,6 +120,7 @@
(let ((map (make-sparse-keymap)))
(set-keymap-parent map tabulated-list-mode-map)
(define-key map "c" 'dispass-create)
+ (define-key map "a" 'dispass-add-label)
map))
(defun dispass-process-sentinel (proc status)
@@ -182,7 +183,8 @@ an eye out for LABEL."
(interactive "MLabel: \nP")
"Create a new password for LABEL."
(let ((length (or length dispass-default-length)))
- (dispass-start-process label t length)))
+ (dispass-start-process label t length)
+ (dispass-add-label label length "dispass1")))
;;;###autoload
(defun dispass (label &optional length)
@@ -192,6 +194,15 @@ an eye out for LABEL."
(dispass-start-process label nil length)))
;; Labels management
+;;;###autoload
+(defun dispass-add-label (label length hashtype)
+ (interactive "MLabel: \nnLength: \nMHash: ")
+ (with-temp-buffer
+ (insert (format "%s length=%d hash=%s\n" label length hashtype))
+ (append-to-file (point-min) (point-max) dispass-file))
+ (when (eq major-mode 'dispass-labels-mode)
+ (revert-buffer)))
+
(defun dispass-from-button (button)
"Call dispass with information from BUTTON."
(dispass (button-get button 'dispass-label)