有没有办法告诉 iswitchb 基于模式而不是字符串忽略缓冲区?我想排除以 dired 模式打开的缓冲区,这些缓冲区通常数量最多,并且很难在其中的 minibuffer 中找到打开的文件。对此的任何帮助将不胜感激。
问问题
121 次
2 回答
1
您可以向 iswitchb-buffer-ignore 添加自定义函数来执行此操作。iswitchb.el 中实际上有一个示例——基于此,这可以解决问题:
(defun iswitchb-ignore-dired-mode (name)
"Ignore all dired mode buffers."
(with-current-buffer name
(derived-mode-p 'dired-mode)))
(setq iswitchb-buffer-ignore '("^ " iswitchb-ignore-dired-mode))
这保留了忽略以空格开头的缓冲区名称的默认行为,并为 dired-mode 缓冲区添加过滤器。
于 2012-09-13T15:30:17.700 回答
0
基于 iswitchb 源代码中的类似示例:
(defun iswitchb-ignore-dired-buffers (buffer)
(with-current-buffer buffer
(eq major-mode 'dired-mode)))
(add-to-list 'iswitchb-buffer-ignore 'iswitchb-ignore-dired-buffers)
于 2012-09-13T15:30:34.547 回答