blob: 3446234d227ef619b5978627b29ae0ac3a386c6c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
(global-set-key (kbd "C-<next>") 'tab-bar-switch-to-next-tab)
(global-set-key (kbd "C-<prior>") 'tab-bar-switch-to-prev-tab)
(defun my/tab-bar-tab-name-function ()
"Return project name if in a project, or default tab-bar name if not.
The default tab-bar name uses the buffer name."
(let ((project-name (projectile-project-name)))
(if (not project-name)
(tab-bar-tab-name-current-with-count)
(projectile-project-name))))
(setq tab-bar-tab-name-function #'my/tab-bar-tab-name-function)
;; Only show the tab bar if there are 2 or more tabs
(setq tab-bar-show 1)
(defun my/project-create-tab ()
(interactive)
(tab-bar-new-tab)
(magit-status))
(setq project-switch-commands #'my/project-create-tab)
(defun my/switch-to-tab-buffer ()
(interactive)
(if (project-current)
(call-interactively #'projectile-switch-to-buffer)
(call-interactively #'switch-to-buffer)))
(global-set-key (kbd "C-x b") #'my/switch-to-tab-buffer)
;; Turn on tab bar mode after startup
(tab-bar-mode 1)
;; Save the desktop session
(desktop-save-mode 1)
(setq tab-bar-new-tab-choice "*dashboard*")
|