大家的ibuffer和tabbar难道不冲突吗?

Vim、Emacs配置和使用
回复
头像
qigx
帖子: 5
注册时间: 2008-01-21 21:32
送出感谢: 0
接收感谢: 0

大家的ibuffer和tabbar难道不冲突吗?

#1

帖子 qigx » 2008-01-21 21:48

问一个困扰很久的问题:
我的emacs23,在ibuffer的窗口下,tabbar的tab一直显示不了。。。

:cry:
附件
Screenshot-Ibuffer.png
zhangsong023
帖子: 768
注册时间: 2006-09-20 19:56
送出感谢: 0
接收感谢: 1 次

#2

帖子 zhangsong023 » 2008-01-24 17:42

这不是冲突,默认的分组函数略去了同ibuffer关联的buffer。
重定义分组函数就行了。
头像
qigx
帖子: 5
注册时间: 2008-01-21 21:32
送出感谢: 0
接收感谢: 0

#3

帖子 qigx » 2008-01-24 21:46

谢谢楼上的回答!
不过我把如下的分组加入后,还是不行呀。。。
(setq ibuffer-saved-filter-groups
(quote (("default"
("dired" (mode . dired-mode))
("ibuffer" (mode . ibuffer-mode))
("perl" (mode . cperl-mode))
("erc" (mode . erc-mode))
("planner" (or
(name . "^\\*Calendar\\*$")
(name . "^diary$")
(mode . muse-mode)))
("emacs" (or
(name . "^\\*scratch\\*$")
(name . "^\\*Messages\\*$")))
("gnus" (or
(mode . message-mode)
(mode . bbdb-mode)
(mode . mail-mode)
(mode . gnus-group-mode)
(mode . gnus-summary-mode)
(mode . gnus-article-mode)
(name . "^\\.bbdb$")
(name . "^\\.newsrc-dribble")))))))

(add-hook 'ibuffer-mode-hook
(lambda ()
(ibuffer-switch-to-saved-filter-groups "default")))

(defun tabbar-buffer-ignore-groups ()
"Return the list of group names the current buffer belongs to.
Return a list of one element based on major mode."
(list
(cond
((member (buffer-name)
'("*scratch*" "*Messages*" "*Bookmark List*" "java version"
"*JDEE bsh*" "*Backtrace*" "*Completions*"))
"Common"
)
((memq major-mode
'(dired-mode ibuffer-mode))
"List"
)
((memq major-mode
'(help-mode apropos-mode Info-mode Man-mode))
"Help"
)
((memq major-mode
'(rmail-mode
rmail-edit-mode vm-summary-mode vm-mode mail-mode
mh-letter-mode mh-show-mode mh-folder-mode
gnus-summary-mode message-mode gnus-group-mode
gnus-article-mode score-mode gnus-browse-killed-mode))
"Mail"
)
(t
(if (and (stringp mode-name)
(save-match-data (string-match "[^ ]" mode-name)))
mode-name
(symbol-name major-mode))
))))
头像
qigx
帖子: 5
注册时间: 2008-01-21 21:32
送出感谢: 0
接收感谢: 0

#4

帖子 qigx » 2008-01-24 22:23

刚试了一下,把关于ibuffer的所有设定(设置列宽,分组之类)
都注销掉,是可以显示TAB的。
不过只要一按/m之类的过滤命令,TAB就会消失,
之后即使按//,TAB也不会回来了。。。
elisp的功底不够,看不懂源程序呀,
望高人指点一下
回复

回到 “Vim和Emacs”