我正在使用tabbar来定义文件组。 有些是在“Emacs缓冲区”组中,有些是在“Dired”组中,而其他所有组织都在“用户缓冲区”组中。
我想在使用议程文件时添加另一个组 - 我希望它们出现在名为“议程缓冲区”的目标组中,而不是让所有文件都出现在“用户缓冲区”中并丢弃我的选项卡视图。 怎么可能这样做?
目前这是我的配置:
(defun tabbar-buffer-groups ()
"Return the list of group names the current buffer belongs to.
This function is a custom function for tabbar-mode's tabbar-buffer-groups.
This function group all buffers into 3 groups:
Those Dired, those user buffer, and those emacs buffer.
Emacs buffer are those starting with “*”."
(list
(cond
((string-equal "*" (substring (buffer-name) 0 1)) "Emacs Buffer")
((eq major-mode 'dired-mode) "Dired")
((eq major-mode 'sr-mode) "Dired")
(t "User Buffer")
)))
(setq tabbar-buffer-groups-function 'tabbar-buffer-groups)
答案 0 :(得分:2)
为函数添加一个条件,如下所示:
(defun tabbar-buffer-groups ()
"Return the list of group names the current buffer belongs to.
This function is a custom function for tabbar-mode's tabbar-buffer-groups.
This function group all buffers into 3 groups:
Those Dired, those user buffer, and those emacs buffer.
Emacs buffer are those starting with “*”."
(list
(cond
((string-equal "*" (substring (buffer-name) 0 1)) "Emacs Buffer")
((member (buffer-file-name) (mapcar 'expand-file-name org-agenda-files)) "Agenda")
((eq major-mode 'dired-mode) "Dired")
((eq major-mode 'sr-mode) "Dired")
(t "User Buffer")
)))