emacs-devel
[Top][All Lists]
Advanced

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

[PATCH] Document tab opening/closing hooks and variables


From: Robert Cochran
Subject: [PATCH] Document tab opening/closing hooks and variables
Date: Tue, 10 Dec 2019 13:33:27 -0800
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux)

Hi all,

As promised, I've written information on tab-bar-post-open-functions,
tab-bar-close-last-tab-choice, tab-bar-prevent-close-functions, and
tab-bar-post-close-functions in the manual.

Suggestions and comments welcome, as usual.

Thanks,
-- 
~Robert Cochran

>From 95f26f10030dca8954be16a540d6d699f4567131 Mon Sep 17 00:00:00 2001
From: Robert Cochran <address@hidden>
Date: Tue, 10 Dec 2019 13:25:08 -0800
Subject: [PATCH] Document tab opening/closing hooks and variables

* doc/emacs/frame.texi (Tab Bats): Document
tab-bar-post-open-functions, tab-bar-close-last-tab-choice,
tab-bar-prevent-close-functions, and tab-bar-pre-close-functions.
---
 doc/emacs/frames.texi | 44 +++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 42 insertions(+), 2 deletions(-)

diff --git a/doc/emacs/frames.texi b/doc/emacs/frames.texi
index 3a98df7de9..1af06dd308 100644
--- a/doc/emacs/frames.texi
+++ b/doc/emacs/frames.texi
@@ -1313,8 +1313,9 @@ Tab Bars
 @item C-x t 0
 @kindex C-x t 0
 @findex tab-close
-Close the selected tab (@code{tab-close}).  It has no effect if there
-is only one tab.
+Close the selected tab (@code{tab-close}).  Its effect when there is
+only one tab is determined by the variable
+@code{tab-bar-close-last-tab-choice}.
 
 @item C-x t o
 @kindex C-x t o
@@ -1329,6 +1330,45 @@ Tab Bars
 @kindex C-x t 1
 @findex tab-close-other
 Close all tabs on the selected frame, except the selected one.
+@end table
+
+  The following customizable variables provide more fine-grained
+control over tab opening and closing:
+
+@table @code
+@item tab-bar-post-open-functions
+@vindex tab-bar-post-open-functions
+A list of functions to be called to perform any final setup tasks just
+after the tab is opened.  Each function is called with the new tab as
+an argument, and this new tab will be the current tab.
+
+@item tab-bar-close-last-tab-choice
+@vindex tab-bar-close-last-tab-choice
+Determines what to do when the last tab on a frame is going to be
+closed.  The value @code{nil} means to do nothing and display a
+message in the minibuffer, as when attempting to close the only window
+in a frame.  The value @code{delete-frame} closes the entire
+containing frame, as it does in most modern web browsers.  The value
+@code{tab-bar-mode-disable} will disable tab-bar-mode.  If the value
+is a function, it will be called with the tab to be closed as an
+argument.
+
+@item tab-bar-prevent-close-functions
+@vindex tab-bar-prevent-close-functions
+A list of functions to be called to determine whether or not to close
+the tab.  Each function is called with the tab to be closed and a
+boolean argument indicating whether or not it is the last tab.  If any
+of the functions return non-@code{nil}, the tab is not closed and no
+cleanup is performed, including any actions determined by
+@code{tab-bar-close-last-tab-choice}.
+
+@item tab-bar-pre-close-functions
+@vindex tab-bar-pre-close-functions
+A list of functions to be called to perform any cleanup tasks just
+before the tab is closed.  Each function is called with the tab to be
+closed and a boolean argument indicating whether or not it is the last
+tab.
+
 @end table
 
 @node Dialog Boxes
-- 
2.23.0


reply via email to

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