summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.config/emacs/modules/bd--tabs.el22
1 files changed, 15 insertions, 7 deletions
diff --git a/.config/emacs/modules/bd--tabs.el b/.config/emacs/modules/bd--tabs.el
index f85c226..a09cf33 100644
--- a/.config/emacs/modules/bd--tabs.el
+++ b/.config/emacs/modules/bd--tabs.el
@@ -23,13 +23,21 @@
;;;; use project name if it exists
(defun bd/tab-bar-name-function ()
- (let ((project (project-current)))
- (if project
- (car (last
- (file-name-split
- (directory-file-name
- (project-root project)))))
- (tab-bar-tab-name-current))))
+ (mapconcat (lambda (buffer)
+ (let* ((file (buffer-file-name buffer))
+ (project (and file (project-current
+ nil
+ (file-name-directory (buffer-file-name buffer))))))
+ (if project
+ (car (last
+ (file-name-split
+ (directory-file-name
+ (project-root project)))))
+ (tab-bar-tab-name-current))))
+ (delete-dups (mapcar #'window-buffer
+ (window-list-1 (frame-first-window)
+ 'nomini)))
+ ", "))
(setopt project-switch-commands
'((project-find-file "Find file")