aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGnus developers2012-01-26 23:03:28 +0000
committerKatsumi Yamaoka2012-01-26 23:03:28 +0000
commitf4887f8b1e3dcfe015fba1b9e9d403f98bcda572 (patch)
tree8a0eb97b7002fa3695d820ab2cf9f74aa45f3fd3
parent8dc96b40e09d4cb33e71a9899e2366282564b9c8 (diff)
downloademacs-f4887f8b1e3dcfe015fba1b9e9d403f98bcda572.tar.gz
emacs-f4887f8b1e3dcfe015fba1b9e9d403f98bcda572.zip
Merge changes made in Gnus trunk.
gnus-sum.el (gnus-summary-mode): Don't make bidi-paragraph-direction bound in old Emacsen and XEmacsen. gnus.el (gnus-group-find-parameter): Check for liveness of the buffer, not of the string which is its name. gnus-sum.el (gnus-summary-move-article): Don't propagate marks to non-server-marks groups. (gnus-group-make-articles-read): Ditto. gnus-srvr.el (gnus-server-prepare): Use it to avoid showing ephemeral methods (bug#9676). gnus.el (gnus-method-ephemeral-p): New function.
-rw-r--r--lisp/gnus/ChangeLog21
-rw-r--r--lisp/gnus/gnus-srvr.el2
-rw-r--r--lisp/gnus/gnus-sum.el32
-rw-r--r--lisp/gnus/gnus.el9
4 files changed, 52 insertions, 12 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index 9329188fc00..177393bbc2a 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,5 +1,26 @@
12012-01-26 Katsumi Yamaoka <yamaoka@jpl.org> 12012-01-26 Katsumi Yamaoka <yamaoka@jpl.org>
2 2
3 * gnus-sum.el (gnus-summary-mode): Don't make bidi-paragraph-direction
4 bound in old Emacsen and XEmacsen.
5
62012-01-26 Nick Alcock <nick.alcock@oracle.com> (tiny change)
7
8 * gnus.el (gnus-group-find-parameter): Check for liveness of the
9 buffer, not of the string which is its name.
10
112012-01-26 Lars Ingebrigtsen <larsi@gnus.org>
12
13 * gnus-sum.el (gnus-summary-move-article): Don't propagate marks to
14 non-server-marks groups.
15 (gnus-group-make-articles-read): Ditto.
16
17 * gnus-srvr.el (gnus-server-prepare): Use it to avoid showing ephemeral
18 methods (bug#9676).
19
20 * gnus.el (gnus-method-ephemeral-p): New function.
21
222012-01-26 Katsumi Yamaoka <yamaoka@jpl.org>
23
3 * gnus-sum.el (gnus-summary-mode): Force paragraph direction to be 24 * gnus-sum.el (gnus-summary-mode): Force paragraph direction to be
4 left-to-right. 25 left-to-right.
5 26
diff --git a/lisp/gnus/gnus-srvr.el b/lisp/gnus/gnus-srvr.el
index 34a16a21dc5..66509c939dc 100644
--- a/lisp/gnus/gnus-srvr.el
+++ b/lisp/gnus/gnus-srvr.el
@@ -330,7 +330,7 @@ The following commands are available:
330 (dolist (open gnus-opened-servers) 330 (dolist (open gnus-opened-servers)
331 (when (and (not (member (car open) done)) 331 (when (and (not (member (car open) done))
332 ;; Just ignore ephemeral servers. 332 ;; Just ignore ephemeral servers.
333 (not (member (car open) gnus-ephemeral-servers))) 333 (not (gnus-method-ephemeral-p (car open))))
334 (push (car open) done) 334 (push (car open) done)
335 (gnus-server-insert-server-line 335 (gnus-server-insert-server-line
336 (setq op-ser (format "%s:%s" (caar open) (nth 1 (car open)))) 336 (setq op-ser (format "%s:%s" (caar open) (nth 1 (car open))))
diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el
index 26bd5b0bddc..bbb4c46fb0b 100644
--- a/lisp/gnus/gnus-sum.el
+++ b/lisp/gnus/gnus-sum.el
@@ -3060,8 +3060,6 @@ When FORCE, rebuild the tool bar."
3060(defvar bookmark-make-record-function) 3060(defvar bookmark-make-record-function)
3061 3061
3062 3062
3063(defvar bidi-paragraph-direction)
3064
3065(defun gnus-summary-mode (&optional group) 3063(defun gnus-summary-mode (&optional group)
3066 "Major mode for reading articles. 3064 "Major mode for reading articles.
3067 3065
@@ -3100,8 +3098,9 @@ The following commands are available:
3100 (setq buffer-read-only t ;Disable modification 3098 (setq buffer-read-only t ;Disable modification
3101 show-trailing-whitespace nil) 3099 show-trailing-whitespace nil)
3102 (setq truncate-lines t) 3100 (setq truncate-lines t)
3103 ;; Force paragraph direction to be left-to-right. 3101 ;; Force paragraph direction to be left-to-right. Don't make it
3104 (setq bidi-paragraph-direction 'left-to-right) 3102 ;; bound in old Emacsen and XEmacsen.
3103 (set (make-local-variable 'bidi-paragraph-direction) 'left-to-right)
3105 (add-to-invisibility-spec '(gnus-sum . t)) 3104 (add-to-invisibility-spec '(gnus-sum . t))
3106 (gnus-summary-set-display-table) 3105 (gnus-summary-set-display-table)
3107 (gnus-set-default-directory) 3106 (gnus-set-default-directory)
@@ -6283,13 +6282,19 @@ The resulting hash table is returned, or nil if no Xrefs were found."
6283 (entry (gnus-group-entry group)) 6282 (entry (gnus-group-entry group))
6284 (info (nth 2 entry)) 6283 (info (nth 2 entry))
6285 (active (gnus-active group)) 6284 (active (gnus-active group))
6285 (set-marks
6286 (or gnus-propagate-marks
6287 (gnus-method-option-p
6288 (gnus-find-method-for-group group)
6289 'server-marks)))
6286 range) 6290 range)
6287 (if (not entry) 6291 (if (not entry)
6288 ;; Group that Gnus doesn't know exists, but still allow the 6292 ;; Group that Gnus doesn't know exists, but still allow the
6289 ;; backend to set marks. 6293 ;; backend to set marks.
6290 (gnus-request-set-mark 6294 (when set-marks
6291 group (list (list (gnus-compress-sequence (sort articles #'<)) 6295 (gnus-request-set-mark
6292 'add '(read)))) 6296 group (list (list (gnus-compress-sequence (sort articles #'<))
6297 'add '(read)))))
6293 ;; Normal, subscribed groups. 6298 ;; Normal, subscribed groups.
6294 (setq range (gnus-compute-read-articles group articles)) 6299 (setq range (gnus-compute-read-articles group articles))
6295 (with-current-buffer gnus-group-buffer 6300 (with-current-buffer gnus-group-buffer
@@ -6298,11 +6303,14 @@ The resulting hash table is returned, or nil if no Xrefs were found."
6298 (gnus-info-set-marks ',info ',(gnus-info-marks info) t) 6303 (gnus-info-set-marks ',info ',(gnus-info-marks info) t)
6299 (gnus-info-set-read ',info ',(gnus-info-read info)) 6304 (gnus-info-set-read ',info ',(gnus-info-read info))
6300 (gnus-get-unread-articles-in-group ',info (gnus-active ,group)) 6305 (gnus-get-unread-articles-in-group ',info (gnus-active ,group))
6301 (gnus-request-set-mark ,group (list (list ',range 'del '(read)))) 6306 (when ,set-marks
6307 (gnus-request-set-mark
6308 ,group (list (list ',range 'del '(read)))))
6302 (gnus-group-update-group ,group t)))) 6309 (gnus-group-update-group ,group t))))
6303 ;; Add the read articles to the range. 6310 ;; Add the read articles to the range.
6304 (gnus-info-set-read info range) 6311 (gnus-info-set-read info range)
6305 (gnus-request-set-mark group (list (list range 'add '(read)))) 6312 (when set-marks
6313 (gnus-request-set-mark group (list (list range 'add '(read)))))
6306 ;; Then we have to re-compute how many unread 6314 ;; Then we have to re-compute how many unread
6307 ;; articles there are in this group. 6315 ;; articles there are in this group.
6308 (when active 6316 (when active
@@ -10061,7 +10069,11 @@ ACTION can be either `move' (the default), `crosspost' or `copy'."
10061 (gnus-add-marked-articles 10069 (gnus-add-marked-articles
10062 to-group 'expire (list to-article) info)) 10070 to-group 'expire (list to-article) info))
10063 10071
10064 (when to-marks 10072 (when (and to-marks
10073 (or gnus-propagate-marks
10074 (gnus-method-option-p
10075 (gnus-find-method-for-group to-group)
10076 'server-marks)))
10065 (gnus-request-set-mark 10077 (gnus-request-set-mark
10066 to-group (list (list (list to-article) 'add to-marks))))) 10078 to-group (list (list (list to-article) 'add to-marks)))))
10067 10079
diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el
index 2d48f515f3e..f90d5433efe 100644
--- a/lisp/gnus/gnus.el
+++ b/lisp/gnus/gnus.el
@@ -3581,6 +3581,13 @@ that that variable is buffer-local to the summary buffers."
3581 gnus-valid-select-methods))) 3581 gnus-valid-select-methods)))
3582 (equal (nth 1 m1) (nth 1 m2))))))) 3582 (equal (nth 1 m1) (nth 1 m2)))))))
3583 3583
3584(defun gnus-method-ephemeral-p (method)
3585 (let ((equal nil))
3586 (dolist (ephemeral gnus-ephemeral-servers)
3587 (when (gnus-sloppily-equal-method-parameters method ephemeral)
3588 (setq equal t)))
3589 equal))
3590
3584(defsubst gnus-sloppily-equal-method-parameters (m1 m2) 3591(defsubst gnus-sloppily-equal-method-parameters (m1 m2)
3585 ;; Check parameters for sloppy equality. 3592 ;; Check parameters for sloppy equality.
3586 (let ((p1 (copy-sequence (cddr m1))) 3593 (let ((p1 (copy-sequence (cddr m1)))
@@ -3877,7 +3884,7 @@ If SYMBOL, return the value of that symbol in the group parameters.
3877 3884
3878If you call this function inside a loop, consider using the faster 3885If you call this function inside a loop, consider using the faster
3879`gnus-group-fast-parameter' instead." 3886`gnus-group-fast-parameter' instead."
3880 (with-current-buffer (if (buffer-live-p gnus-group-buffer) 3887 (with-current-buffer (if (buffer-live-p (get-buffer gnus-group-buffer))
3881 gnus-group-buffer 3888 gnus-group-buffer
3882 (current-buffer)) 3889 (current-buffer))
3883 (if symbol 3890 (if symbol