* shr.el (shr-insert): Fix up the white space only regexp.
[gnus] / lisp / gnus-win.el
index e38be50..809e4c3 100644 (file)
@@ -1,26 +1,25 @@
 ;;; gnus-win.el --- window configuration functions for Gnus
-;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
-;;        Free Software Foundation, Inc.
+
+;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+;;   2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
 
 ;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org>
 ;; Keywords: news
 
 ;; This file is part of GNU Emacs.
 
-;; GNU Emacs is free software; you can redistribute it and/or modify
+;; GNU Emacs is free software: you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
 
 ;; GNU Emacs is distributed in the hope that it will be useful,
 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.         See the
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ;; GNU General Public License for more details.
 
 ;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 
 ;;; Commentary:
 
   "*If non-nil, frames on all displays will be considered useable by Gnus.
 When nil, only frames on the same display as the selected frame will be
 used to display Gnus windows."
+  :version "22.1"
   :group 'gnus-windows
   :type 'boolean)
 
 (defvar gnus-buffer-configuration
   '((group
      (vertical 1.0
-              (group 1.0 point)
-              (if gnus-carpal '(group-carpal 4))))
+              (group 1.0 point)))
     (summary
      (vertical 1.0
-              (summary 1.0 point)
-              (if gnus-carpal '(summary-carpal 4))))
+              (summary 1.0 point)))
     (article
      (cond
-      ((and gnus-use-picons
-           (eq gnus-picons-display-where 'picons))
-       '(frame 1.0
-              (vertical 1.0
-                        (summary 0.25 point)
-                        (if gnus-carpal '(summary-carpal 4))
-                        (article 1.0))
-              (vertical ((height . 5) (width . 15)
-                         (user-position . t)
-                         (left . -1) (top . 1))
-                        (picons 1.0))))
       (gnus-use-trees
        '(vertical 1.0
                  (summary 0.25 point)
@@ -95,16 +82,13 @@ used to display Gnus windows."
       (t
        '(vertical 1.0
                  (summary 0.25 point)
-                 (if gnus-carpal '(summary-carpal 4))
                  (article 1.0)))))
     (server
      (vertical 1.0
-              (server 1.0 point)
-              (if gnus-carpal '(server-carpal 2))))
+              (server 1.0 point)))
     (browse
      (vertical 1.0
-              (browse 1.0 point)
-              (if gnus-carpal '(browse-carpal 2))))
+              (browse 1.0 point)))
     (message
      (vertical 1.0
               (message 1.0 point)))
@@ -118,6 +102,9 @@ used to display Gnus windows."
      (vertical 1.0
               (summary 0.25)
               (faq 1.0 point)))
+    (only-article
+     (vertical 1.0
+              (article 1.0 point)))
     (edit-article
      (vertical 1.0
               (article 1.0 point)))
@@ -129,12 +116,16 @@ used to display Gnus windows."
      (vertical 1.0
               (summary 0.25)
               (edit-score 1.0 point)))
+    (edit-server
+     (vertical 1.0
+              (server 0.5)
+              (edit-form 1.0 point)))
     (post
      (vertical 1.0
               (post 1.0 point)))
     (reply
      (vertical 1.0
-              (article-copy 0.5)
+              (article 0.5)
               (message 1.0 point)))
     (forward
      (vertical 1.0
@@ -149,7 +140,6 @@ used to display Gnus windows."
     (pipe
      (vertical 1.0
               (summary 0.25 point)
-              (if gnus-carpal '(summary-carpal 4))
               ("*Shell Command Output*" 1.0)))
     (bug
      (vertical 1.0
@@ -175,8 +165,12 @@ used to display Gnus windows."
               (article 0.5)
               (message 1.0 point)))
     (display-term
-      (vertical 1.0
-               ("*display*" 1.0))))
+     (vertical 1.0
+              ("*display*" 1.0)))
+    (mml-preview
+     (vertical 1.0
+              (message 0.5)
+              (mml-preview 1.0 point))))
   "Window configuration for all possible Gnus buffers.
 See the Gnus manual for an explanation of the syntax used.")
 
@@ -189,28 +183,25 @@ See the Gnus manual for an explanation of the syntax used.")
     (edit-group . gnus-group-edit-buffer)
     (edit-form . gnus-edit-form-buffer)
     (edit-server . gnus-server-edit-buffer)
-    (group-carpal . gnus-carpal-group-buffer)
-    (summary-carpal . gnus-carpal-summary-buffer)
-    (server-carpal . gnus-carpal-server-buffer)
-    (browse-carpal . gnus-carpal-browse-buffer)
     (edit-score . gnus-score-edit-buffer)
     (message . gnus-message-buffer)
     (mail . gnus-message-buffer)
     (post-news . gnus-message-buffer)
     (faq . gnus-faq-buffer)
-    (picons . gnus-picons-buffer-name)
     (tree . gnus-tree-buffer)
     (score-trace . "*Score Trace*")
     (split-trace . "*Split Trace*")
     (info . gnus-info-buffer)
     (category . gnus-category-buffer)
     (article-copy . gnus-article-copy)
-    (draft . gnus-draft-buffer))
+    (draft . gnus-draft-buffer)
+    (mml-preview . mml-preview-buffer))
   "Mapping from short symbols to buffer names or buffer variables.")
 
 (defcustom gnus-configure-windows-hook nil
   "*A hook called when configuring windows."
-  :group 'gnus-windowns
+  :version "22.1"
+  :group 'gnus-windows
   :type 'hook)
 
 ;;; Internal variables.
@@ -307,7 +298,7 @@ See the Gnus manual for an explanation of the syntax used.")
     (unless window
       (setq window current-window))
     (select-window window)
-    ;; This might be an old-stylee buffer config.
+    ;; This might be an old-style buffer config.
     (when (vectorp split)
       (setq split (append split nil)))
     (when (or (consp (car split))
@@ -317,7 +308,7 @@ See the Gnus manual for an explanation of the syntax used.")
     ;; The SPLIT might be something that is to be evaled to
     ;; return a new SPLIT.
     (while (and (not (assq (car split) gnus-window-to-buffer))
-               (gnus-functionp (car split)))
+               (symbolp (car split)) (fboundp (car split)))
       (setq split (eval split)))
     (let* ((type (car split))
           (subs (cddr split))
@@ -380,7 +371,7 @@ See the Gnus manual for an explanation of the syntax used.")
          (while subs
            (setq sub (append (pop subs) nil))
            (while (and (not (assq (car sub) gnus-window-to-buffer))
-                       (gnus-functionp (car sub)))
+                       (symbolp (car sub)) (fboundp (car sub)))
              (setq sub (eval sub)))
            (when sub
              (push sub comp-subs)
@@ -480,7 +471,8 @@ See the Gnus manual for an explanation of the syntax used.")
          (gnus-configure-frame split)
          (run-hooks 'gnus-configure-windows-hook)
          (when gnus-window-frame-focus
-           (select-frame (window-frame gnus-window-frame-focus))))))))
+           (gnus-select-frame-set-input-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."
@@ -519,7 +511,7 @@ should have point."
       ;; The SPLIT might be something that is to be evaled to
       ;; return a new SPLIT.
       (while (and (not (assq (car split) gnus-window-to-buffer))
-                 (gnus-functionp (car split)))
+                 (symbolp (car split)) (fboundp (car split)))
        (setq split (eval split)))
 
       (setq type (elt split 0))
@@ -569,7 +561,7 @@ should have point."
              (delq lowest-buf bufs)))))
 
 (eval-and-compile
-  (cond 
+  (cond
    ((fboundp 'frames-on-display-list)
     (defalias 'gnus-frames-on-display-list 'frames-on-display-list))
    ((and (featurep 'xemacs) (fboundp 'frame-device))
@@ -581,9 +573,9 @@ should have point."
 (defun gnus-get-buffer-window (buffer &optional frame)
   (cond ((and (null gnus-use-frames-on-any-display)
              (memq frame '(t 0 visible)))
-        (car 
+        (car
          (let ((frames (gnus-frames-on-display-list)))
-           (gnus-delete-if (lambda (win) (not (memq (window-frame win) 
+           (gnus-remove-if (lambda (win) (not (memq (window-frame win)
                                                     frames)))
                            (get-buffer-window-list buffer nil frame)))))
        (t