emacs tabbar.el包为每个窗口添加(缓冲)标签,标配aquamacs,可以使用emacs-goodies-el包添加到emacs23。
你们中的任何一个硬核emacs用户实际上都在使用tabbar吗?我有点习惯使用标签,但是我想知道如果没有它们的工作可以提高效率,并且除了检查缓冲区列表(Cx Cb)以外还有其他方法可以获得当前项目文件的概述。 / p>
作为旁注,我非常喜欢textmate的项目抽屉(和标签),但emacs中的任何类似内容看起来都很简单。
答案 0 :(得分:32)
我尝试过使用它,但我觉得它限制了我的工作流程而不是改进它。有许多优秀的Emacs模式可以帮助组织许多缓冲区,我只是觉得将缓冲区映射到制表符是其中一种方式。
想想最基本的情景 - 很多标签。不同的程序如何处理它 - 限制最大标签(IntelliJ IDEA);启用标签栏滚动(Firefox);无限缩小标签大小(Google Chrome);创建选项卡行(IntelliJ IDEA)......这些解决方案都没有那么好,而且在Emacs中没有选项卡,我们只需要担心一个问题。至少这是我的主观意见 - 其他人肯定不同意......我个人只需要 ido 和 iswitchb 。
答案 1 :(得分:21)
Ya,我使用tabbar和sr-speedbar。
我自定义tabbar以显示特定组中的文件,并修改一些键绑定以更轻松地导航文件。
FWIW,这是我的〜/ .emacs:
的相关部分(require 'tabbar)
; turn on the tabbar
(tabbar-mode t)
; define all tabs to be one of 3 possible groups: “Emacs Buffer”, “Dired”,
;“User Buffer”.
(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"
)
(t
"User Buffer"
)
)))
(setq tabbar-buffer-groups-function 'tabbar-buffer-groups)
(global-set-key [M-s-left] 'tabbar-backward)
(global-set-key [M-s-right] 'tabbar-forward)
emacswiki上有很多其他提示: http://www.emacswiki.org/emacs/TabBarMode
答案 2 :(得分:10)
没有
我使用iswitch-b
C-x b“缓冲区的前几个字母”,然后C-s旋转到我想要的特定文件,不需要我移动到鼠标就不到2秒。
答案 3 :(得分:7)
没有。我可能会被说服再次尝试使用正确的自定义,但默认情况下它对我来说毫无用处,因为我习惯上有超过100个缓冲区打开。 ibuffer
及其过滤和分组是管理我尝试过的大量缓冲区的最佳方式。
答案 4 :(得分:5)
我喜欢使用speedbar进行快速缓冲导航。我的.emacs
(speedbar-change-initial-expansion-list "buffers")
(global-set-key [f8] 'speedbar-get-focus)
因此,当我按下F8时,弹出一个带有打开缓冲区列表的新框架,您可以在该区域上移动要选择的缓冲区并激活它。还有一个F8回到主框架。
答案 5 :(得分:4)
标签不是为鼠标用户保留的。看看vim可能的工作流程:gt去下一个标签,或gT去上一个。假设您有一个专用的vim窗口:您可以轻松地从一个缓冲区切换到另一个缓冲区。是的,标签可能适用于缓冲区很少的用户。如果你有数百个,这将无效。
答案 6 :(得分:3)
标签只有在你使用鼠标时才有用,而对我来说,Emacs的主要好处之一就是我可以避开鼠标。
所以,不,tabbar一般没用。
我在浏览网页时发现这些标签很有用(使用w3m),但在这种情况下我正在使用鼠标...
答案 7 :(得分:3)
坦率地说,在谈到标签,菜单和工具栏时,你会找到比emacs更好的编辑器。 Emacs显然鼓励您使用键盘并让您的鼠标保持睡眠状态。
当您打开大量缓冲区时,Tabbar或任何其他制表符管理工具都会遇到困难。您也不希望在选项卡中显示所有缓冲区。不得不从键盘上取下手以抓住鼠标并单击一个标签,然后将手从鼠标上移开并将其放在键盘上显然是浪费时间,而只需使用简单的按键即可。
您可以对您的emacs和您做的最好的事情是在.emacs中进行以下配置:
(menu-bar-mode -1) ;hide menu-bar
(scroll-bar-mode -1) ;hide scroll-bar
(tool-bar-mode -1) ;hide tool-bar
这将迫使你忘记使用鼠标做旧的事情(比如使用tabbar或菜单......),而是用手指代替。
答案 8 :(得分:1)
到目前为止,我还没有尝试过,但在我从XEmacs切换回GNU Emacs之前,我非常重视XEmacs选项卡。我发现当我打开许多源文件时,这是跳转到正确文件的最快方法之一。
既然我知道tabbar,我正在尝试它;到目前为止,我喜欢它。
答案 9 :(得分:1)
C-x b<RET>
总是为您提供最后编辑的缓冲区。你用标签做什么?大多数情况下切换回&amp;在两个文件之间。你去吧。
答案 10 :(得分:1)
Tabbar看起来像是被遗忘的
那么elscreen呢?
可以通过http://melpa.milkbox.net/#/elscreen找到 - 或安装emacs-elpa(或melpa)。
Elscreen对我非常有用。