Commit 3f9ad4e7 authored by Juri Linkov's avatar Juri Linkov

* lisp/tab-bar.el (tab-bar-tab-name-function): Turn defvar into defcustom.

(tab-bar-tab-name-all-windows): Rename from tab-bar-tab-name.
(tab-bar-tab-name-selected-window): New function used by default.
parent 9839466b
Pipeline #3501 failed with stage
in 54 minutes and 8 seconds
......@@ -249,13 +249,29 @@ This helps to select the tab by its number using `tab-bar-select-tab'."
(defvar tab-bar-separator nil)
(defvar tab-bar-tab-name-function #'tab-bar-tab-name
(defcustom tab-bar-tab-name-function #'tab-bar-tab-name-selected-window
"Function to get a tab name.
Function gets no arguments.
By default, use function `tab-bar-tab-name'.")
The choice is between displaying only the name of the current buffer
in the tab name (default), or displaying the names of all buffers
from all windows in the window configuration."
:type '(choice (const :tag "Selected window buffer" tab-bar-tab-name-selected-window)
(const :tag "All window buffers" tab-bar-tab-name-all-windows)
(function :tag "Function"))
:initialize 'custom-initialize-default
:set (lambda (sym val)
(set-default sym val)
:group 'tab-bar
:version "27.1")
(defun tab-bar-tab-name-selected-window ()
"Generate tab name from the buffer of the selected window.
Also add the number of windows in the window configuration."
(format "%s (%d)" (buffer-name) (length (window-list-1 nil 'nomini))))
(defun tab-bar-tab-name ()
"Generate tab name in the context of the selected frame."
(defun tab-bar-tab-name-all-windows ()
"Generate tab name from buffers of all windows."
(mapconcat #'buffer-name
(delete-dups (mapcar #'window-buffer
(window-list-1 (frame-first-window)
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment