From: Juri Linkov <juri@linkov.net>
To: Michael Heerdegen <michael_heerdegen@web.de>
Cc: emacs-devel@gnu.org
Subject: Re: Tabs
Date: Sun, 27 Oct 2019 01:40:41 +0300 [thread overview]
Message-ID: <87ftjfruza.fsf@mail.linkov.net> (raw)
In-Reply-To: <87eez1843b.fsf@web.de> (Michael Heerdegen's message of "Fri, 25 Oct 2019 13:19:36 +0200")
> I've now just found out that what I want is to use a tab-line, like this:
>
> #+begin_src emacs-lisp
> (require 'tab-line)
> (setq-default tab-line-format nil)
> (setq-default tab-line-close-tab-action #'kill-buffer)
>
> (setq-default
> tab-line-tabs-function
> (defun my-tab-line-get-mode-tabs ()
> (cl-sort
> (let ((mode major-mode))
> (delq nil
> (mapcar
> (lambda (b)
> (and (with-current-buffer b
> (derived-mode-p mode))
> (not (string-match-p (rx bos " ")
> (buffer-name b)))
> b))
> (buffer-list))))
> #'string< :key #'buffer-name)))
>
> (defun my-enable-tab-line ()
> (setq-local tab-line-format '(:eval (tab-line-format))))
>
> (dolist (hook '(Info-mode-hook eww-mode-hook))
> (add-hook hook #'my-enable-tab-line))
> #+end_src
> [...]
> I see that you did not have my use case in mind when I e.g. try
> `tab-line-switch-to-next-tab': it switches to buffers that are not
> displayed in the tab-line, and the tab-line just vanishes.
>
> Maybe there could be different tab-bar/tab-line modes for the different
> use cases, or something like that, haven't thought about it.
Thanks for posting the use case with real needs, so now it's clear
how to make tab-line customizable.
Now you can replace all code above with just 3 lines:
(setq tab-line-tabs-function #'tab-line-tabs-mode-buffers)
(dolist (hook '(Info-mode-hook eww-mode-hook))
(add-hook hook #'tab-line-mode))
This is because now tab-line-tabs-function is customizable to the
function that populates the tab-line with buffers having the same mode.
Also there is separate global-tab-line-mode that affects all buffers
and buffer-local tab-line-mode.
tab-line-switch-to-next-tab works as well in your case now.
next prev parent reply other threads:[~2019-10-26 22:40 UTC|newest]
Thread overview: 219+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-31 20:45 Tabs Juri Linkov
2019-09-01 8:12 ` Tabs martin rudalics
2019-09-01 14:40 ` Tabs Eli Zaretskii
2019-09-01 19:57 ` Tabs Juri Linkov
2019-09-02 0:40 ` Tabs Stefan Kangas
2019-09-02 10:11 ` Tabs Elias Mårtenson
2019-09-02 11:16 ` Tabs Dmitry Gutov
2019-09-02 19:27 ` Tabs Juri Linkov
2019-09-03 5:21 ` Tabs Jean Louis
2019-09-03 19:40 ` Tabs Juri Linkov
2019-09-03 20:14 ` Tabs Jean Louis
2019-09-02 19:17 ` Tabs Juri Linkov
2019-09-03 5:45 ` Tabs Yuri Khan
2019-09-03 19:45 ` Tabs Juri Linkov
2019-09-15 16:44 ` Tabs Stefan Kangas
2019-09-15 21:17 ` Tabs Juri Linkov
2019-09-02 2:29 ` Tabs Eli Zaretskii
2019-09-02 19:29 ` Tabs Juri Linkov
2019-09-03 2:27 ` Tabs Eli Zaretskii
2019-09-01 8:59 ` Tabs (on macos) Jean-Christophe Helary
2019-09-01 20:11 ` Juri Linkov
2019-09-16 13:41 ` Stefan Kangas
2019-09-16 20:33 ` Juri Linkov
2019-09-17 9:11 ` Stefan Kangas
2019-09-17 9:29 ` Stefan Kangas
2019-09-17 20:28 ` Juri Linkov
2019-09-17 22:38 ` Stefan Kangas
2019-09-20 18:26 ` Alan Third
2019-09-17 23:29 ` Stefan Kangas
2019-09-01 9:28 ` Tabs Alan Mackenzie
2019-09-01 19:18 ` Tabs Juri Linkov
2019-09-01 12:31 ` Tabs Ergus
2019-09-01 19:31 ` Tabs Juri Linkov
2019-09-02 4:51 ` Tabs Ergus
2019-09-02 19:33 ` Tabs Juri Linkov
2019-09-02 21:06 ` Tabs Stefan Monnier
2019-09-03 19:56 ` Tabs Juri Linkov
2019-09-03 2:30 ` Tabs Eli Zaretskii
2019-09-03 19:58 ` Tabs Juri Linkov
2019-09-03 5:39 ` Tabs Ergus
2019-09-05 22:24 ` Tabs Ergus
2019-09-07 20:14 ` Tabs Juri Linkov
2019-09-02 12:41 ` Tabs Stefan Monnier
2019-09-02 19:39 ` Tabs Juri Linkov
2019-09-02 21:03 ` Tabs Stefan Monnier
2019-09-03 12:22 ` Tabs Robert Pluim
2019-09-03 20:21 ` Tabs Juri Linkov
2019-09-15 19:21 ` Tabs Stefan Kangas
2019-09-15 21:32 ` Tabs Juri Linkov
2019-09-16 4:19 ` Tabs Yuri Khan
2019-09-16 20:59 ` Tabs Juri Linkov
2019-09-17 5:29 ` Tabs Yuri Khan
2019-09-17 20:37 ` Tabs Juri Linkov
2019-09-17 22:53 ` Tabs Drew Adams
2019-09-28 17:06 ` Tabs Stefan Kangas
2019-09-28 19:52 ` Tabs Juri Linkov
2019-10-20 22:38 ` Tabs Juri Linkov
2019-11-02 21:40 ` Tabs Juri Linkov
2019-09-19 23:57 ` Tabs Michael Heerdegen
2019-09-21 22:45 ` Tabs Juri Linkov
2019-09-22 0:31 ` Tabs Michael Heerdegen
2019-09-25 20:15 ` Tabs Juri Linkov
2019-10-05 13:57 ` Tabs Michael Heerdegen
2019-10-05 22:12 ` Tabs Juri Linkov
2019-10-06 8:22 ` Tabs Michael Heerdegen
2019-10-06 12:09 ` Tabs Michael Heerdegen
2019-10-06 15:16 ` Tabs Michael Heerdegen
2019-10-06 17:49 ` Tabs Eli Zaretskii
2019-10-06 17:55 ` Tabs Juri Linkov
2019-10-06 18:05 ` Tabs Juri Linkov
2019-10-06 18:58 ` Tabs Eli Zaretskii
2019-10-06 18:59 ` Tabs Eli Zaretskii
2019-10-06 19:08 ` Tabs Michael Heerdegen
2019-10-06 19:11 ` Tabs Juri Linkov
2019-10-06 19:21 ` Tabs Eli Zaretskii
2019-10-06 19:58 ` Tabs Juri Linkov
2019-10-07 16:05 ` Tabs Eli Zaretskii
2019-10-07 16:53 ` Tabs Michael Heerdegen
2019-10-07 17:12 ` Tabs Ergus
2019-10-07 18:24 ` Tabs Eli Zaretskii
2019-10-07 19:28 ` Tabs Ergus
2019-10-08 7:42 ` Tabs Eli Zaretskii
2019-10-08 8:56 ` Tabs Ergus
2019-10-08 9:18 ` Tabs Eli Zaretskii
2019-10-08 13:58 ` Tabs Eli Zaretskii
2019-10-08 16:00 ` Tabs Ergus
2019-10-08 16:18 ` Tabs Eli Zaretskii
2019-10-08 16:40 ` Tabs Ergus
2019-10-08 17:03 ` Tabs Eli Zaretskii
2019-10-08 23:43 ` Tabs Ergus
2019-10-09 8:37 ` Tabs Eli Zaretskii
2019-10-09 10:39 ` Tabs Ergus
2019-10-09 11:35 ` Tabs Eli Zaretskii
2019-10-09 12:05 ` Tabs Ergus
2019-10-09 12:18 ` Tabs Eli Zaretskii
2019-10-09 12:32 ` Tabs Eli Zaretskii
2019-10-09 18:12 ` Tabs martin rudalics
2019-10-09 18:46 ` Tabs Eli Zaretskii
2019-10-10 9:15 ` Tabs martin rudalics
2019-10-10 9:59 ` Tabs Eli Zaretskii
2019-10-10 10:38 ` Tabs martin rudalics
2019-10-10 11:33 ` Tabs Eli Zaretskii
2019-10-10 11:53 ` Tabs Eli Zaretskii
2019-10-10 14:58 ` Tabs martin rudalics
2019-10-09 12:36 ` Tabs Eli Zaretskii
2019-10-09 13:55 ` Tabs Ergus
2019-10-09 14:21 ` Tabs Eli Zaretskii
2019-10-09 15:15 ` Tabs Ergus
2019-10-09 15:35 ` Tabs Eli Zaretskii
2019-10-10 11:52 ` Tabs Eli Zaretskii
2019-10-10 13:12 ` Tabs Ergus
2019-10-10 13:54 ` Tabs Eli Zaretskii
2019-10-10 14:19 ` Tabs Ergus
2019-10-10 15:03 ` Tabs Eli Zaretskii
2019-10-10 15:35 ` Tabs martin rudalics
2019-10-10 15:46 ` Tabs Ergus
2019-10-10 18:14 ` Tabs martin rudalics
2019-10-10 18:26 ` Tabs Eli Zaretskii
2019-10-11 8:18 ` Tabs martin rudalics
2019-10-11 9:16 ` Tabs Eli Zaretskii
2019-10-16 9:16 ` Tabs martin rudalics
2019-10-10 13:29 ` Tabs Ergus
2019-10-10 13:47 ` Tabs Eli Zaretskii
2019-10-10 14:15 ` Tabs Ergus
2019-10-10 14:40 ` Tabs Ergus
2019-10-10 15:11 ` Tabs Eli Zaretskii
2019-10-10 20:54 ` Tabs Juri Linkov
2019-10-11 7:08 ` Tabs Eli Zaretskii
2019-10-13 20:57 ` Tabs Juri Linkov
2019-10-09 22:37 ` Tabs Juri Linkov
2019-10-10 7:51 ` Tabs Eli Zaretskii
2019-10-10 22:35 ` Tabs Juri Linkov
2019-10-11 8:18 ` Tabs martin rudalics
2019-10-12 22:42 ` Tabs Juri Linkov
2019-10-13 8:16 ` Tabs martin rudalics
2019-10-14 18:02 ` Tabs martin rudalics
2019-10-14 18:29 ` Tabs Eli Zaretskii
2019-10-15 9:47 ` Tabs martin rudalics
2019-10-14 19:35 ` Tabs Juri Linkov
2019-10-14 21:17 ` Tabs T.V Raman
2019-10-14 21:53 ` Tabs Phil Sainty
2019-10-14 22:00 ` Tabs Juri Linkov
2019-10-14 22:36 ` Tabs T.V Raman
2019-10-15 20:39 ` Tabs Juri Linkov
2019-10-16 0:14 ` Tabs T.V Raman
2019-10-15 6:12 ` Tabs Eli Zaretskii
2019-10-15 9:47 ` Tabs martin rudalics
2019-10-15 17:45 ` Tabs Juri Linkov
2019-10-16 9:16 ` Tabs martin rudalics
2019-10-14 19:00 ` Tabs Juri Linkov
2019-10-15 9:47 ` Tabs martin rudalics
2019-10-11 9:20 ` Tabs Eli Zaretskii
2019-10-12 22:47 ` Tabs Juri Linkov
2019-10-13 6:51 ` Tabs Eli Zaretskii
2019-10-13 20:48 ` Tabs Juri Linkov
2019-10-13 21:09 ` Tabs Eli Zaretskii
2019-10-13 21:33 ` Tabs Juri Linkov
2019-10-14 8:24 ` Tabs Eli Zaretskii
2019-10-07 17:58 ` Tabs Eli Zaretskii
2019-10-07 19:11 ` Tabs Juri Linkov
2019-10-06 18:38 ` Tabs Michael Heerdegen
2019-10-06 19:03 ` Tabs Eli Zaretskii
2019-10-06 18:56 ` Tabs Eli Zaretskii
2019-10-08 19:15 ` Tabs Michael Heerdegen
2019-10-09 22:48 ` Tabs Juri Linkov
2019-10-10 11:06 ` Tabs Michael Heerdegen
2019-10-10 20:59 ` Tabs Juri Linkov
2019-10-13 9:32 ` Tabs Michael Heerdegen
2019-10-13 20:24 ` Tabs Juri Linkov
2019-10-15 14:42 ` Tabs Michael Heerdegen
2019-10-19 22:51 ` Tabs Juri Linkov
2019-10-25 11:19 ` Tabs Michael Heerdegen
2019-10-26 22:40 ` Juri Linkov [this message]
2019-10-29 19:09 ` Tabs Michael Heerdegen
2019-11-05 23:24 ` Tabs Juri Linkov
2019-11-08 18:45 ` Tabs Michael Heerdegen
2019-11-08 19:56 ` Tabs Michael Heerdegen
2019-11-12 21:31 ` Tabs Juri Linkov
2019-11-13 16:47 ` Tabs Michael Heerdegen
2019-11-13 22:10 ` Tabs Juri Linkov
2019-11-14 9:20 ` Tabs martin rudalics
[not found] <<87a7bpysm8.fsf@mail.linkov.net>
[not found] ` <<d0768d60-979b-8635-b2b5-474742827552@gmx.at>
[not found] ` <<87o903dc2j.fsf@mail.linkov.net>
[not found] ` <<CADwFkmmgvyMzc_RZwz-AD6=cpUGfxdx5VZAv2eau4T9dAkTKQg@mail.gmail.com>
[not found] ` <<CADtN0WKCHd9fA-tCaGckHFQ59+6ns72NdGrvAdKHss0GLYFZ6g@mail.gmail.com>
[not found] ` <<87tv9ubirx.fsf@mail.linkov.net>
[not found] ` <<courier.000000005D6DF86C.00005323@protected.rcdrun.com>
2019-09-03 15:24 ` Tabs Drew Adams
-- strict thread matches above, loose matches on Subject: below --
2019-09-03 9:20 Tabs Angelo Graziosi
2019-09-02 13:31 Tabs Angelo Graziosi
2019-09-02 19:46 ` Tabs Juri Linkov
2019-09-03 8:49 ` Tabs Angelo Graziosi
2019-09-03 19:48 ` Tabs Juri Linkov
2019-09-04 8:22 ` Tabs Angelo Graziosi
2019-09-04 19:05 ` Tabs Juri Linkov
2019-09-04 22:41 ` Tabs Angelo Graziosi
2019-09-05 21:40 ` Tabs Angelo Graziosi
2019-09-06 20:16 ` Tabs Angelo Graziosi
2019-09-07 20:28 ` Tabs Juri Linkov
2019-09-08 20:19 ` Tabs Juri Linkov
2019-09-16 7:56 ` Tabs Angelo Graziosi
2019-09-16 8:45 ` Tabs Angelo Graziosi
2019-09-16 20:43 ` Tabs Juri Linkov
2019-10-13 14:49 ` Tabs Angelo Graziosi
2019-10-13 15:07 ` Tabs Eli Zaretskii
2019-10-13 21:09 ` Tabs Angelo Graziosi
2019-10-14 8:23 ` Tabs Eli Zaretskii
2019-10-15 21:38 ` Tabs Angelo Graziosi
2019-10-16 6:53 ` Tabs Eli Zaretskii
2019-10-13 22:08 ` Tabs Juri Linkov
2019-10-14 6:37 ` Tabs Eli Zaretskii
2019-10-15 7:55 ` Tabs Eli Zaretskii
2019-10-15 19:44 ` Tabs Juri Linkov
2019-10-16 6:23 ` Tabs Eli Zaretskii
2019-10-16 22:17 ` Tabs Juri Linkov
2019-10-17 7:17 ` Tabs Eli Zaretskii
2019-10-13 22:01 ` Tabs Juri Linkov
2005-08-22 11:25 Tabs Maurizio Colucci
2005-08-22 12:13 ` Tabs Thomas Kjosmoen
2005-08-22 15:48 ` Tabs Aaron S. Hawley
2005-08-23 1:29 ` Tabs Richard M. Stallman
2005-08-23 10:49 ` Tabs Maurizio Colucci
2005-08-24 10:32 ` Tabs Richard M. Stallman
2003-08-15 22:35 Tabs Paul
2003-08-15 23:23 ` Tabs Marcus Frings
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87ftjfruza.fsf@mail.linkov.net \
--to=juri@linkov.net \
--cc=emacs-devel@gnu.org \
--cc=michael_heerdegen@web.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.