summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/gnus/ChangeLog6
-rw-r--r--lisp/gnus/plstore.el14
2 files changed, 19 insertions, 1 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index be4d0675781..e25ffd933e6 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,5 +1,11 @@
2012-04-26 Daiki Ueno <ueno@unixuser.org>
+ * plstore.el (plstore-called-interactively-p): New compat macro copied
+ from message.el.
+ (plstore-mode): Use it.
+
+2012-04-26 Daiki Ueno <ueno@unixuser.org>
+
* plstore.el: Revive the editing feature.
(plstore-mode): New mode to edit plstore file.
(plstore-mode-toggle-display, plstore-mode-original)
diff --git a/lisp/gnus/plstore.el b/lisp/gnus/plstore.el
index 2f446c84071..6d5424e833d 100644
--- a/lisp/gnus/plstore.el
+++ b/lisp/gnus/plstore.el
@@ -547,6 +547,18 @@ If no one is selected, symmetric encryption will be performed. "
(plstore-mode-original)
(plstore-mode-decoded)))
+(eval-when-compile
+ (defmacro plstore-called-interactively-p (kind)
+ (condition-case nil
+ (progn
+ (eval '(called-interactively-p 'any))
+ ;; Emacs >=23.2
+ `(called-interactively-p ,kind))
+ ;; Emacs <23.2
+ (wrong-number-of-arguments '(called-interactively-p))
+ ;; XEmacs
+ (void-function '(interactive-p)))))
+
;;;###autoload
(define-derived-mode plstore-mode emacs-lisp-mode "PLSTORE"
"Major mode for editing PLSTORE files."
@@ -554,7 +566,7 @@ If no one is selected, symmetric encryption will be performed. "
(add-hook 'write-contents-functions #'plstore--write-contents-functions)
(define-key plstore-mode-map "\C-c\C-c" #'plstore-mode-toggle-display)
;; to create a new file with plstore-mode, mark it as already decoded
- (if (called-interactively-p 'any)
+ (if (plstore-called-interactively-p 'any)
(setq plstore-encoded t)
(plstore-mode-decoded)))