diff options
| author | Juri Linkov | 2019-11-30 23:36:52 +0200 |
|---|---|---|
| committer | Juri Linkov | 2019-11-30 23:36:52 +0200 |
| commit | df89d6d6dc429e638e425536d1c201b5373f2abd (patch) | |
| tree | c2dae073958df54a64d67f598ff389da8bbb6761 | |
| parent | 54c792ece6c20297571aa68c613075c8a8152bcc (diff) | |
| download | emacs-df89d6d6dc429e638e425536d1c201b5373f2abd.tar.gz emacs-df89d6d6dc429e638e425536d1c201b5373f2abd.zip | |
* lisp/gnus/gnus-win.el (gnus-configure-frame): Check for window-live-p.
* doc/misc/gnus.texi (Tabbed Interface): New node. (bug#37998)
| -rw-r--r-- | doc/misc/gnus.texi | 32 | ||||
| -rw-r--r-- | lisp/gnus/gnus-win.el | 9 |
2 files changed, 38 insertions, 3 deletions
diff --git a/doc/misc/gnus.texi b/doc/misc/gnus.texi index e43aa92c997..d563d52d58d 100644 --- a/doc/misc/gnus.texi +++ b/doc/misc/gnus.texi | |||
| @@ -813,6 +813,7 @@ Various | |||
| 813 | * Symbolic Prefixes:: How to supply some Gnus functions with options. | 813 | * Symbolic Prefixes:: How to supply some Gnus functions with options. |
| 814 | * Formatting Variables:: You can specify what buffers should look like. | 814 | * Formatting Variables:: You can specify what buffers should look like. |
| 815 | * Window Layout:: Configuring the Gnus buffer windows. | 815 | * Window Layout:: Configuring the Gnus buffer windows. |
| 816 | * Tabbed Interface:: Configuring the Gnus tabs. | ||
| 816 | * Faces and Fonts:: How to change how faces look. | 817 | * Faces and Fonts:: How to change how faces look. |
| 817 | * Mode Lines:: Displaying information in the mode lines. | 818 | * Mode Lines:: Displaying information in the mode lines. |
| 818 | * Highlighting and Menus:: Making buffers look all nice and cozy. | 819 | * Highlighting and Menus:: Making buffers look all nice and cozy. |
| @@ -22189,6 +22190,7 @@ to you, using @kbd{G b u} and updating the group will usually fix this. | |||
| 22189 | * Symbolic Prefixes:: How to supply some Gnus functions with options. | 22190 | * Symbolic Prefixes:: How to supply some Gnus functions with options. |
| 22190 | * Formatting Variables:: You can specify what buffers should look like. | 22191 | * Formatting Variables:: You can specify what buffers should look like. |
| 22191 | * Window Layout:: Configuring the Gnus buffer windows. | 22192 | * Window Layout:: Configuring the Gnus buffer windows. |
| 22193 | * Tabbed Interface:: Configuring the Gnus tabs. | ||
| 22192 | * Faces and Fonts:: How to change how faces look. | 22194 | * Faces and Fonts:: How to change how faces look. |
| 22193 | * Mode Lines:: Displaying information in the mode lines. | 22195 | * Mode Lines:: Displaying information in the mode lines. |
| 22194 | * Highlighting and Menus:: Making buffers look all nice and cozy. | 22196 | * Highlighting and Menus:: Making buffers look all nice and cozy. |
| @@ -22985,6 +22987,36 @@ between summary buffer (top one-sixth) and article buffer (bottom). | |||
| 22985 | @end itemize | 22987 | @end itemize |
| 22986 | 22988 | ||
| 22987 | 22989 | ||
| 22990 | @node Tabbed Interface | ||
| 22991 | @section Tabbed Interface | ||
| 22992 | @cindex tabbed interface | ||
| 22993 | @cindex tabs | ||
| 22994 | |||
| 22995 | Gnus supports display of different buffers in dedicated tabs | ||
| 22996 | that you can select using the tab bar. | ||
| 22997 | |||
| 22998 | To open the group buffer in a new tab named @samp{Gnus}, use: | ||
| 22999 | |||
| 23000 | @lisp | ||
| 23001 | (push '("\\`\\*Group\\*\\'" . | ||
| 23002 | (display-buffer-in-tab | ||
| 23003 | (name . "Gnus"))) | ||
| 23004 | display-buffer-alist) | ||
| 23005 | @end lisp | ||
| 23006 | |||
| 23007 | To read every summary in a separate explicitly named tab, use: | ||
| 23008 | |||
| 23009 | @lisp | ||
| 23010 | (push '("\\`\\*Summary .*\\*\\'" . | ||
| 23011 | (display-buffer-in-tab | ||
| 23012 | (name . (lambda (buffer _alist) | ||
| 23013 | (setq buffer (buffer-name buffer)) | ||
| 23014 | (when (string-match "\\`\\*Summary \\(.*\\)\\*\\'" buffer) | ||
| 23015 | (format "Group %s" (match-string 1 buffer))))))) | ||
| 23016 | display-buffer-alist) | ||
| 23017 | @end lisp | ||
| 23018 | |||
| 23019 | |||
| 22988 | @node Faces and Fonts | 23020 | @node Faces and Fonts |
| 22989 | @section Faces and Fonts | 23021 | @section Faces and Fonts |
| 22990 | @cindex faces | 23022 | @cindex faces |
diff --git a/lisp/gnus/gnus-win.el b/lisp/gnus/gnus-win.el index b39c9faab6c..81b3437fc58 100644 --- a/lisp/gnus/gnus-win.el +++ b/lisp/gnus/gnus-win.el | |||
| @@ -367,11 +367,14 @@ See the Gnus manual for an explanation of the syntax used.") | |||
| 367 | (setq result (or (gnus-configure-frame | 367 | (setq result (or (gnus-configure-frame |
| 368 | (car comp-subs) window) | 368 | (car comp-subs) window) |
| 369 | result)) | 369 | result)) |
| 370 | (select-window new-win) | 370 | (if (not (window-live-p new-win)) |
| 371 | (setq window new-win) | 371 | ;; pop-to-buffer might have deleted the original window |
| 372 | (setq window (selected-window)) | ||
| 373 | (select-window new-win) | ||
| 374 | (setq window new-win)) | ||
| 372 | (setq comp-subs (cdr comp-subs)))) | 375 | (setq comp-subs (cdr comp-subs)))) |
| 373 | ;; Return the proper window, if any. | 376 | ;; Return the proper window, if any. |
| 374 | (when result | 377 | (when (window-live-p result) |
| 375 | (select-window result))))))) | 378 | (select-window result))))))) |
| 376 | 379 | ||
| 377 | (defvar gnus-frame-split-p nil) | 380 | (defvar gnus-frame-split-p nil) |