emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r103467: Merge changes made in Gnus t


From: Katsumi Yamaoka
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r103467: Merge changes made in Gnus trunk.
Date: Tue, 01 Mar 2011 12:20:17 +0000
User-agent: Bazaar (2.0.3)

------------------------------------------------------------
revno: 103467
author: Julien Danjou <address@hidden>
committer: Katsumi Yamaoka <address@hidden>
branch nick: trunk
timestamp: Tue 2011-03-01 12:20:17 +0000
message:
  Merge changes made in Gnus trunk.
  
  sieve.el (sieve-buffer-script-name): New local variable to store sieve script 
name.
   (sieve-edit-script): Store sieve script name.
   (sieve-upload): Use sieve script name when uploading.
   (sieve-upload): Use substitute-command-keys.
   (sieve-edit-script): Use substitute-command-keys.
   (sieve-refresh-scriptlist): Use substitute-command-keys.
   (sieve-manage-mode-map): Define keymap properly.
   (sieve-manage-mode): Do not set mode name manually, change mode-name to
   (sieve-refresh-scriptlist): Use substitute-command-keys."Sieve-manage".  
Remove commented code about cvs.
   (sieve-manage-quit): New function.
   (sieve-manage-mode-map): Bind 'q' to sieve-manage-quit.
  gnus-gravatar.el: Use gnus-with-article-buffer.
  gnus-art.el (gnus-with-article-buffer): Check that the gnus-article-buffer is 
alive.
modified:
  lisp/gnus/ChangeLog
  lisp/gnus/gnus-art.el
  lisp/gnus/gnus-gravatar.el
  lisp/gnus/sieve.el
=== modified file 'lisp/gnus/ChangeLog'
--- a/lisp/gnus/ChangeLog       2011-02-27 08:20:21 +0000
+++ b/lisp/gnus/ChangeLog       2011-03-01 12:20:17 +0000
@@ -1,3 +1,19 @@
+2011-02-28  Julien Danjou  <address@hidden>
+
+       * sieve.el (sieve-buffer-script-name): New local variable to store
+       sieve script name.
+       (sieve-edit-script): Store sieve script name.
+       (sieve-upload): Use sieve script name when uploading.
+       (sieve-upload): Use substitute-command-keys.
+       (sieve-edit-script): Use substitute-command-keys.
+       (sieve-refresh-scriptlist): Use substitute-command-keys.
+       (sieve-manage-mode-map): Define keymap properly.
+       (sieve-manage-mode): Do not set mode name manually, change mode-name to
+       (sieve-refresh-scriptlist): Use substitute-command-keys."Sieve-manage".
+       Remove commented code about cvs.
+       (sieve-manage-quit): New function.
+       (sieve-manage-mode-map): Bind 'q' to sieve-manage-quit.
+
 2011-02-27  Lars Magne Ingebrigtsen  <address@hidden>
 
        * gnus-group.el (gnus-import-other-newsrc-file): New function.
@@ -23,6 +39,13 @@
        * gnus-demon.el (gnus-demon-init): run-with-timer should be called with
        numerical parameters.
 
+2011-02-25  Julien Danjou  <address@hidden>
+
+       * gnus-gravatar.el: Use gnus-with-article-buffer.
+
+       * gnus-art.el (gnus-with-article-buffer): Check that the
+       gnus-article-buffer is alive.
+
 2011-02-24  Teodor Zlatanov  <address@hidden>
 
        * auth-source.el (auth-source-creation-prompts): New variable to manage

=== modified file 'lisp/gnus/gnus-art.el'
--- a/lisp/gnus/gnus-art.el     2011-02-23 22:59:34 +0000
+++ b/lisp/gnus/gnus-art.el     2011-03-01 12:20:17 +0000
@@ -1725,9 +1725,10 @@
 (put 'gnus-with-article-headers 'edebug-form-spec '(body))
 
 (defmacro gnus-with-article-buffer (&rest forms)
-  `(with-current-buffer gnus-article-buffer
-     (let ((inhibit-read-only t))
-       ,@forms)))
+  `(when (buffer-live-p gnus-article-buffer)
+     (with-current-buffer gnus-article-buffer
+       (let ((inhibit-read-only t))
+         ,@forms))))
 
 (put 'gnus-with-article-buffer 'lisp-indent-function 0)
 (put 'gnus-with-article-buffer 'edebug-form-spec '(body))

=== modified file 'lisp/gnus/gnus-gravatar.el'
--- a/lisp/gnus/gnus-gravatar.el        2011-01-25 04:08:28 +0000
+++ b/lisp/gnus/gnus-gravatar.el        2011-03-01 12:20:17 +0000
@@ -80,9 +80,8 @@
   "Insert GRAVATAR for ADDRESS in HEADER in current article buffer.
 Set image category to CATEGORY."
   (unless (eq gravatar 'error)
-    (with-current-buffer gnus-article-buffer
+    (gnus-with-article-buffer
       (let ((mark (point-marker))
-           (inhibit-read-only t)
            (inhibit-point-motion-hooks t)
            (case-fold-search t))
        (save-restriction

=== modified file 'lisp/gnus/sieve.el'
--- a/lisp/gnus/sieve.el        2011-01-25 04:08:28 +0000
+++ b/lisp/gnus/sieve.el        2011-03-01 12:20:17 +0000
@@ -98,39 +98,40 @@
 
 (defvar sieve-manage-buffer nil)
 (defvar sieve-buffer-header-end nil)
+(defvar sieve-buffer-script-name nil
+  "The real script name of the buffer.")
+(make-local-variable 'sieve-buffer-script-name)
 
 ;; Sieve-manage mode:
 
-(defvar sieve-manage-mode-map nil
+(defvar sieve-manage-mode-map
+  (let ((map (make-sparse-keymap)))
+    ;; various
+    (define-key map "?" 'sieve-help)
+    (define-key map "h" 'sieve-help)
+    (define-key map "q" 'sieve-bury-buffer)
+    ;; activating
+    (define-key map "m" 'sieve-activate)
+    (define-key map "u" 'sieve-deactivate)
+    (define-key map "\M-\C-?" 'sieve-deactivate-all)
+    ;; navigation keys
+    (define-key map "\C-p" 'sieve-prev-line)
+    (define-key map [up] 'sieve-prev-line)
+    (define-key map "\C-n" 'sieve-next-line)
+    (define-key map [down] 'sieve-next-line)
+    (define-key map " " 'sieve-next-line)
+    (define-key map "n" 'sieve-next-line)
+    (define-key map "p" 'sieve-prev-line)
+    (define-key map "\C-m" 'sieve-edit-script)
+    (define-key map "f" 'sieve-edit-script)
+    (define-key map "o" 'sieve-edit-script-other-window)
+    (define-key map "r" 'sieve-remove)
+    (define-key map "q" 'sieve-manage-quit)
+    (define-key map [(down-mouse-2)] 'sieve-edit-script)
+    (define-key map [(down-mouse-3)] 'sieve-manage-mode-menu)
+    map)
   "Keymap for `sieve-manage-mode'.")
 
-(if sieve-manage-mode-map
-    ()
-  (setq sieve-manage-mode-map (make-sparse-keymap))
-  (suppress-keymap sieve-manage-mode-map)
-  ;; various
-  (define-key sieve-manage-mode-map "?" 'sieve-help)
-  (define-key sieve-manage-mode-map "h" 'sieve-help)
-  (define-key sieve-manage-mode-map "q" 'sieve-bury-buffer)
-  ;; activating
-  (define-key sieve-manage-mode-map "m" 'sieve-activate)
-  (define-key sieve-manage-mode-map "u" 'sieve-deactivate)
-  (define-key sieve-manage-mode-map "\M-\C-?" 'sieve-deactivate-all)
-  ;; navigation keys
-  (define-key sieve-manage-mode-map "\C-p" 'sieve-prev-line)
-  (define-key sieve-manage-mode-map [up] 'sieve-prev-line)
-  (define-key sieve-manage-mode-map "\C-n" 'sieve-next-line)
-  (define-key sieve-manage-mode-map [down] 'sieve-next-line)
-  (define-key sieve-manage-mode-map " " 'sieve-next-line)
-  (define-key sieve-manage-mode-map "n" 'sieve-next-line)
-  (define-key sieve-manage-mode-map "p" 'sieve-prev-line)
-  (define-key sieve-manage-mode-map "\C-m" 'sieve-edit-script)
-  (define-key sieve-manage-mode-map "f" 'sieve-edit-script)
-  (define-key sieve-manage-mode-map "o" 'sieve-edit-script-other-window)
-  (define-key sieve-manage-mode-map "r" 'sieve-remove)
-  (define-key sieve-manage-mode-map [(down-mouse-2)] 'sieve-edit-script)
-  (define-key sieve-manage-mode-map [(down-mouse-3)] 'sieve-manage-mode-menu))
-
 (easy-menu-define sieve-manage-mode-menu sieve-manage-mode-map
   "Sieve Menu."
   '("Manage Sieve"
@@ -138,21 +139,21 @@
     ["Activate script" sieve-activate t]
     ["Deactivate script" sieve-deactivate t]))
 
-(define-derived-mode sieve-manage-mode fundamental-mode "SIEVE"
+(define-derived-mode sieve-manage-mode fundamental-mode "Sieve-manage"
   "Mode used for sieve script management."
-  (setq mode-name "SIEVE")
   (buffer-disable-undo (current-buffer))
   (setq truncate-lines t)
   (easy-menu-add sieve-manage-mode-menu sieve-manage-mode-map))
 
 (put 'sieve-manage-mode 'mode-class 'special)
 
-;; This is necessary to allow correct handling of \\[cvs-mode-diff-map]
-;; in substitute-command-keys.
-;(fset 'sieve-manage-mode-map sieve-manage-mode-map)
-
 ;; Commands used in sieve-manage mode:
 
+(defun sieve-manage-quit ()
+  "Quit."
+  (interactive)
+  (kill-buffer (current-buffer)))
+
 (defun sieve-activate (&optional pos)
   (interactive "d")
   (let ((name (sieve-script-at-point)) err)
@@ -204,7 +205,10 @@
       (switch-to-buffer (get-buffer-create "template.siv"))
       (insert sieve-template))
     (sieve-mode)
-    (message "Press C-c C-l to upload script to server.")))
+    (setq sieve-buffer-script-name name)
+    (message
+     (substitute-command-keys
+      "Press \\[sieve-upload] to upload script to server."))))
 
 (defmacro sieve-change-region (&rest body)
   "Turns off sieve-region before executing BODY, then re-enables it after.
@@ -337,13 +341,18 @@
     ;; get list of script names and print them
     (let ((scripts (sieve-manage-listscripts sieve-manage-buffer)))
       (if (null scripts)
-         (insert (format (concat "No scripts on server, press RET on %s to "
-                                 "create a new script.\n") sieve-new-script))
-       (insert (format (concat "%d script%s on server, press RET on a script "
-                               "name edits it, or\npress RET on %s to create "
-                               "a new script.\n") (length scripts)
-                               (if (eq (length scripts) 1) "" "s")
-                               sieve-new-script)))
+         (insert
+           (substitute-command-keys
+            (format
+             "No scripts on server, press \\[sieve-edit-script] on %s to 
create a new script.\n"
+             sieve-new-script)))
+       (insert
+         (substitute-command-keys
+          (format (concat "%d script%s on server, press \\[sieve-edit-script] 
on a script "
+                          "name edits it, or\npress \\[sieve-edit-script] on 
%s to create "
+                          "a new script.\n") (length scripts)
+                          (if (eq (length scripts) 1) "" "s")
+                          sieve-new-script))))
       (save-excursion
        (sieve-insert-scripts (list sieve-new-script))
        (sieve-insert-scripts scripts)))
@@ -363,15 +372,15 @@
 ;;;###autoload
 (defun sieve-upload (&optional name)
   (interactive)
-  (unless name
-    (setq name (buffer-name)))
   (when (or (get-buffer sieve-buffer) (call-interactively 'sieve-manage))
     (let ((script (buffer-string)) err)
       (with-current-buffer (get-buffer sieve-buffer)
-       (setq err (sieve-manage-putscript name script sieve-manage-buffer))
+       (setq err (sieve-manage-putscript
+                   (or name sieve-buffer-script-name (buffer-name))
+                   script sieve-manage-buffer))
        (if (sieve-manage-ok-p err)
-           (message (concat
-                     "Sieve upload done.  Use `C-c RET' to manage scripts."))
+           (message (substitute-command-keys
+                     "Sieve upload done.  Use \\[sieve-manage] to manage 
scripts."))
          (message "Sieve upload failed: %s" (nth 2 err)))))))
 
 ;;;###autoload


reply via email to

[Prev in Thread] Current Thread [Next in Thread]