Clean up dispass-labels--refresh

* dispass.el (dispass-labels--refresh): Store information once and
  reuse.
This commit is contained in:
Tom Willemsen 2012-07-08 22:46:55 +02:00
parent 41e2eb2b80
commit 688bee7ca1

View file

@ -254,16 +254,21 @@ thrown."
(while (re-search-forward (while (re-search-forward
"\\(\\(?:\\sw\\|\\s_\\)+\\) .*length=\\([0-9]+\\) .*hash=\\(\\sw+\\)$" "\\(\\(?:\\sw\\|\\s_\\)+\\) .*length=\\([0-9]+\\) .*hash=\\(\\sw+\\)$"
nil t) nil t)
(add-to-list 'tmp-list `(,(match-string 1) (let ((label (match-string 1))
[(,(match-string 1) (length (match-string 2))
(hashmethod (match-string 3)))
(add-to-list 'tmp-list
`(,label
[(,label
face link face link
help-echo ,(concat "Generate passphrase for " (match-string 1)) help-echo ,(concat "Generate passphrase for "
label)
follow-link t follow-link t
dispass-label ,(match-string 1) dispass-label ,label
dispass-length ,(match-string 2) dispass-length ,length
action dispass-from-button) action dispass-from-button)
,(match-string 2) ,length
,(match-string 3)])))) ,hashmethod])))))
(setq tabulated-list-entries tmp-list))) (setq tabulated-list-entries tmp-list)))
(define-derived-mode dispass-labels-mode tabulated-list-mode "DisPass" (define-derived-mode dispass-labels-mode tabulated-list-mode "DisPass"