aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGnus developers2011-10-06 22:11:15 +0000
committerKatsumi Yamaoka2011-10-06 22:11:15 +0000
commit465d0300d4ffdaf2d816f79f76716ba3406ac869 (patch)
tree5810cfd93a08bc315391ffb9eda6a12c20fc462f
parent0181e1939ea39ceaf54e4cfd95858a5fcfb4f0c7 (diff)
downloademacs-465d0300d4ffdaf2d816f79f76716ba3406ac869.tar.gz
emacs-465d0300d4ffdaf2d816f79f76716ba3406ac869.zip
Merge changes made in Gnus trunk.
gnus.texi (Gnus Utility Functions): Add more references and explanations (bug#9683). ecomplete.el (ecomplete-display-matches): Use a local keymap to handle bindings. gnus-win.el (gnus-configure-windows): Protect against reading ephemeral groups outside of Gnus.
-rw-r--r--doc/misc/ChangeLog5
-rw-r--r--doc/misc/gnus.texi14
-rw-r--r--lisp/gnus/ChangeLog10
-rw-r--r--lisp/gnus/ecomplete.el32
-rw-r--r--lisp/gnus/gnus-win.el11
5 files changed, 55 insertions, 17 deletions
diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog
index 6af229bbdda..bb88eb70344 100644
--- a/doc/misc/ChangeLog
+++ b/doc/misc/ChangeLog
@@ -1,3 +1,8 @@
12011-10-06 Lars Magne Ingebrigtsen <larsi@gnus.org>
2
3 * gnus.texi (Gnus Utility Functions): Add more references and
4 explanations (bug#9683).
5
12011-09-21 Lars Magne Ingebrigtsen <larsi@gnus.org> 62011-09-21 Lars Magne Ingebrigtsen <larsi@gnus.org>
2 7
3 * gnus.texi (Archived Messages): Note the default (bug#9552). 8 * gnus.texi (Archived Messages): Note the default (bug#9552).
diff --git a/doc/misc/gnus.texi b/doc/misc/gnus.texi
index 211bfdb5509..ad1d45cca1a 100644
--- a/doc/misc/gnus.texi
+++ b/doc/misc/gnus.texi
@@ -29093,7 +29093,7 @@ Takes an unprefixed group name and a select method, and returns the full
29093 29093
29094@item gnus-get-info 29094@item gnus-get-info
29095@findex gnus-get-info 29095@findex gnus-get-info
29096Returns the group info list for @var{group}. 29096Returns the group info list for @var{group} (@pxref{Group Info}).
29097 29097
29098@item gnus-group-unread 29098@item gnus-group-unread
29099@findex gnus-group-unread 29099@findex gnus-group-unread
@@ -29102,7 +29102,8 @@ unknown.
29102 29102
29103@item gnus-active 29103@item gnus-active
29104@findex gnus-active 29104@findex gnus-active
29105The active entry for @var{group}. 29105The active entry (i.e., a cons cell containing the lowest and highest
29106article numbers) for @var{group}.
29106 29107
29107@item gnus-set-active 29108@item gnus-set-active
29108@findex gnus-set-active 29109@findex gnus-set-active
@@ -29137,7 +29138,9 @@ Returns the select method corresponding to @var{server}.
29137 29138
29138@item gnus-server-equal 29139@item gnus-server-equal
29139@findex gnus-server-equal 29140@findex gnus-server-equal
29140Says whether two virtual servers are equal. 29141Says whether two virtual servers are essentially equal. For instance,
29142two virtual servers may have server parameters in different order, but
29143this function will consider them equal.
29141 29144
29142@item gnus-group-native-p 29145@item gnus-group-native-p
29143@findex gnus-group-native-p 29146@findex gnus-group-native-p
@@ -29153,8 +29156,9 @@ Says whether @var{group} is foreign or not.
29153 29156
29154@item gnus-group-find-parameter 29157@item gnus-group-find-parameter
29155@findex gnus-group-find-parameter 29158@findex gnus-group-find-parameter
29156Returns the parameter list of @var{group}. If given a second parameter, 29159Returns the parameter list of @var{group} (@pxref{Group Parameters}).
29157returns the value of that parameter for @var{group}. 29160If given a second parameter, returns the value of that parameter for
29161@var{group}.
29158 29162
29159@item gnus-group-set-parameter 29163@item gnus-group-set-parameter
29160@findex gnus-group-set-parameter 29164@findex gnus-group-set-parameter
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index b2d907b7a86..69041ccbbd0 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,13 @@
12011-09-22 Kan-Ru Chen <kanru@kanru.info>
2
3 * ecomplete.el (ecomplete-display-matches): Use a local keymap to
4 handle bindings.
5
62011-10-06 Lars Magne Ingebrigtsen <larsi@gnus.org>
7
8 * gnus-win.el (gnus-configure-windows): Protect against reading
9 ephemeral groups outside of Gnus.
10
12011-10-06 Katsumi Yamaoka <yamaoka@jpl.org> 112011-10-06 Katsumi Yamaoka <yamaoka@jpl.org>
2 12
3 * shr.el (shr-tag-img): Don't get images displayed in tables. 13 * shr.el (shr-tag-img): Don't get images displayed in tables.
diff --git a/lisp/gnus/ecomplete.el b/lisp/gnus/ecomplete.el
index 6a47b119f10..5d1c46bc2f6 100644
--- a/lisp/gnus/ecomplete.el
+++ b/lisp/gnus/ecomplete.el
@@ -27,6 +27,11 @@
27(eval-when-compile 27(eval-when-compile
28 (require 'cl)) 28 (require 'cl))
29 29
30(eval-when-compile
31 (when (featurep 'xemacs)
32 ;; The `kbd' macro requires that the `read-kbd-macro' macro is available.
33 (require 'edmacro)))
34
30(defgroup ecomplete nil 35(defgroup ecomplete nil
31 "Electric completion of email addresses and the like." 36 "Electric completion of email addresses and the like."
32 :group 'mail) 37 :group 'mail)
@@ -123,15 +128,24 @@
123 (message "%s" matches) 128 (message "%s" matches)
124 nil) 129 nil)
125 (setq highlight (ecomplete-highlight-match-line matches line)) 130 (setq highlight (ecomplete-highlight-match-line matches line))
126 (while (not (memq (setq command (read-event highlight)) '(? return))) 131 (let ((local-map (make-sparse-keymap))
127 (cond 132 selected)
128 ((eq command ?\M-n) 133 (define-key local-map (kbd "RET")
129 (setq line (min (1+ line) max-lines))) 134 (lambda () (setq selected (nth line (split-string matches "\n")))))
130 ((eq command ?\M-p) 135 (define-key local-map (kbd "M-n")
131 (setq line (max (1- line) 0)))) 136 (lambda () (setq line (min (1+ line) max-lines))))
132 (setq highlight (ecomplete-highlight-match-line matches line))) 137 (define-key local-map (kbd "M-p")
133 (when (eq command 'return) 138 (lambda () (setq line (max (1- line) 0))))
134 (nth line (split-string matches "\n"))))))) 139 (let ((overriding-local-map local-map))
140 (while (and (null selected)
141 (setq command (read-key-sequence highlight))
142 (lookup-key local-map command))
143 (apply (key-binding command) nil)
144 (setq highlight (ecomplete-highlight-match-line matches line))))
145 (if selected
146 (message selected)
147 (message "Abort"))
148 selected)))))
135 149
136(defun ecomplete-highlight-match-line (matches line) 150(defun ecomplete-highlight-match-line (matches line)
137 (with-temp-buffer 151 (with-temp-buffer
diff --git a/lisp/gnus/gnus-win.el b/lisp/gnus/gnus-win.el
index c38f57d96cb..a1a8abc3086 100644
--- a/lisp/gnus/gnus-win.el
+++ b/lisp/gnus/gnus-win.el
@@ -358,8 +358,13 @@ See the Gnus manual for an explanation of the syntax used.")
358(defvar gnus-frame-split-p nil) 358(defvar gnus-frame-split-p nil)
359 359
360(defun gnus-configure-windows (setting &optional force) 360(defun gnus-configure-windows (setting &optional force)
361 (if (window-configuration-p setting) 361 (cond
362 (set-window-configuration setting) 362 ((null setting)
363 ;; Do nothing.
364 )
365 ((window-configuration-p setting)
366 (set-window-configuration setting))
367 (t
363 (setq gnus-current-window-configuration setting) 368 (setq gnus-current-window-configuration setting)
364 (setq force (or force gnus-always-force-window-configuration)) 369 (setq force (or force gnus-always-force-window-configuration))
365 (let ((split (if (symbolp setting) 370 (let ((split (if (symbolp setting)
@@ -410,7 +415,7 @@ See the Gnus manual for an explanation of the syntax used.")
410 (run-hooks 'gnus-configure-windows-hook) 415 (run-hooks 'gnus-configure-windows-hook)
411 (when gnus-window-frame-focus 416 (when gnus-window-frame-focus
412 (gnus-select-frame-set-input-focus 417 (gnus-select-frame-set-input-focus
413 (window-frame gnus-window-frame-focus)))))))) 418 (window-frame gnus-window-frame-focus)))))))))
414 419
415(defun gnus-delete-windows-in-gnusey-frames () 420(defun gnus-delete-windows-in-gnusey-frames ()
416 "Do a `delete-other-windows' in all frames that have Gnus windows." 421 "Do a `delete-other-windows' in all frames that have Gnus windows."