emacs-diffs
[Top][All Lists]
Advanced

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

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


From: Katsumi Yamaoka
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r106011: Merge changes made in Gnus trunk.
Date: Thu, 06 Oct 2011 22:11:15 +0000
User-agent: Bazaar (2.3.1)

------------------------------------------------------------
revno: 106011
author: Gnus developers <address@hidden>
committer: Katsumi Yamaoka <address@hidden>
branch nick: trunk
timestamp: Thu 2011-10-06 22:11:15 +0000
message:
  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.
modified:
  doc/misc/ChangeLog
  doc/misc/gnus.texi
  lisp/gnus/ChangeLog
  lisp/gnus/ecomplete.el
  lisp/gnus/gnus-win.el
=== modified file 'doc/misc/ChangeLog'
--- a/doc/misc/ChangeLog        2011-09-21 22:34:54 +0000
+++ b/doc/misc/ChangeLog        2011-10-06 22:11:15 +0000
@@ -1,3 +1,8 @@
+2011-10-06  Lars Magne Ingebrigtsen  <address@hidden>
+
+       * gnus.texi (Gnus Utility Functions): Add more references and
+       explanations (bug#9683).
+
 2011-09-21  Lars Magne Ingebrigtsen  <address@hidden>
 
        * gnus.texi (Archived Messages): Note the default (bug#9552).

=== modified file 'doc/misc/gnus.texi'
--- a/doc/misc/gnus.texi        2011-09-21 22:34:54 +0000
+++ b/doc/misc/gnus.texi        2011-10-06 22:11:15 +0000
@@ -29093,7 +29093,7 @@
 
 @item gnus-get-info
 @findex gnus-get-info
-Returns the group info list for @var{group}.
+Returns the group info list for @var{group} (@pxref{Group Info}).
 
 @item gnus-group-unread
 @findex gnus-group-unread
@@ -29102,7 +29102,8 @@
 
 @item gnus-active
 @findex gnus-active
-The active entry for @var{group}.
+The active entry (i.e., a cons cell containing the lowest and highest
+article numbers) for @var{group}.
 
 @item gnus-set-active
 @findex gnus-set-active
@@ -29137,7 +29138,9 @@
 
 @item gnus-server-equal
 @findex gnus-server-equal
-Says whether two virtual servers are equal.
+Says whether two virtual servers are essentially equal.  For instance,
+two virtual servers may have server parameters in different order, but
+this function will consider them equal.
 
 @item gnus-group-native-p
 @findex gnus-group-native-p
@@ -29153,8 +29156,9 @@
 
 @item gnus-group-find-parameter
 @findex gnus-group-find-parameter
-Returns the parameter list of @var{group}.  If given a second parameter,
-returns the value of that parameter for @var{group}.
+Returns the parameter list of @var{group} (@pxref{Group Parameters}).
+If given a second parameter, returns the value of that parameter for
address@hidden
 
 @item gnus-group-set-parameter
 @findex gnus-group-set-parameter

=== modified file 'lisp/gnus/ChangeLog'
--- a/lisp/gnus/ChangeLog       2011-10-06 09:25:26 +0000
+++ b/lisp/gnus/ChangeLog       2011-10-06 22:11:15 +0000
@@ -1,3 +1,13 @@
+2011-09-22  Kan-Ru Chen  <address@hidden>
+
+       * ecomplete.el (ecomplete-display-matches): Use a local keymap to
+       handle bindings.
+
+2011-10-06  Lars Magne Ingebrigtsen  <address@hidden>
+
+       * gnus-win.el (gnus-configure-windows): Protect against reading
+       ephemeral groups outside of Gnus.
+
 2011-10-06  Katsumi Yamaoka  <address@hidden>
 
        * shr.el (shr-tag-img): Don't get images displayed in tables.

=== modified file 'lisp/gnus/ecomplete.el'
--- a/lisp/gnus/ecomplete.el    2011-09-21 22:34:54 +0000
+++ b/lisp/gnus/ecomplete.el    2011-10-06 22:11:15 +0000
@@ -27,6 +27,11 @@
 (eval-when-compile
   (require 'cl))
 
+(eval-when-compile
+  (when (featurep 'xemacs)
+    ;; The `kbd' macro requires that the `read-kbd-macro' macro is available.
+    (require 'edmacro)))
+
 (defgroup ecomplete nil
   "Electric completion of email addresses and the like."
   :group 'mail)
@@ -123,15 +128,24 @@
            (message "%s" matches)
            nil)
        (setq highlight (ecomplete-highlight-match-line matches line))
-       (while (not (memq (setq command (read-event highlight)) '(? return)))
-         (cond
-          ((eq command ?\M-n)
-           (setq line (min (1+ line) max-lines)))
-          ((eq command ?\M-p)
-           (setq line (max (1- line) 0))))
-         (setq highlight (ecomplete-highlight-match-line matches line)))
-       (when (eq command 'return)
-         (nth line (split-string matches "\n")))))))
+       (let ((local-map (make-sparse-keymap))
+             selected)
+         (define-key local-map (kbd "RET")
+           (lambda () (setq selected (nth line (split-string matches "\n")))))
+         (define-key local-map (kbd "M-n")
+           (lambda () (setq line (min (1+ line) max-lines))))
+         (define-key local-map (kbd "M-p")
+           (lambda () (setq line (max (1- line) 0))))
+         (let ((overriding-local-map local-map))
+           (while (and (null selected)
+                       (setq command (read-key-sequence highlight))
+                       (lookup-key local-map command))
+             (apply (key-binding command) nil)
+             (setq highlight (ecomplete-highlight-match-line matches line))))
+         (if selected
+             (message selected)
+           (message "Abort"))
+         selected)))))
 
 (defun ecomplete-highlight-match-line (matches line)
   (with-temp-buffer

=== modified file 'lisp/gnus/gnus-win.el'
--- a/lisp/gnus/gnus-win.el     2011-03-15 22:38:41 +0000
+++ b/lisp/gnus/gnus-win.el     2011-10-06 22:11:15 +0000
@@ -358,8 +358,13 @@
 (defvar gnus-frame-split-p nil)
 
 (defun gnus-configure-windows (setting &optional force)
-  (if (window-configuration-p setting)
-      (set-window-configuration setting)
+  (cond
+   ((null setting)
+    ;; Do nothing.
+    )
+   ((window-configuration-p setting)
+    (set-window-configuration setting))
+   (t
     (setq gnus-current-window-configuration setting)
     (setq force (or force gnus-always-force-window-configuration))
     (let ((split (if (symbolp setting)
@@ -410,7 +415,7 @@
           (run-hooks 'gnus-configure-windows-hook)
           (when gnus-window-frame-focus
             (gnus-select-frame-set-input-focus
-             (window-frame gnus-window-frame-focus))))))))
+             (window-frame gnus-window-frame-focus)))))))))
 
 (defun gnus-delete-windows-in-gnusey-frames ()
   "Do a `delete-other-windows' in all frames that have Gnus windows."


reply via email to

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