用tabbar mode为Emacs建立tab

估计大家都很喜欢其他编辑器里的导航条,通过这些导航条,你可以快速地在你已经打开的文件里切换。一个一个的tab,的确是一个现代编辑器所不可或缺的。

在Emacs里,我们也可以用tabbar mode来实现这个功能,并且可定制的功能更强大。把tabbar mode的el包扔到你的path里,在.emacs里添加下面这一句就可以了:

(require 'tabbar)

如果你要设成随emacs的启动而自动启动tabbar mode,则需要在.emacs里添加这句:

(tabbar-mode t)

当你要遍历这些tab时,有两个命令:

M-x tabbar-forward:   跳转到下一个可见的tab
M-x tabbar-backward:  跳转到前一个可见的tab

我们可以把它们绑定到C-Tab和C-S-Tab键上:

(global-set-key [(control shift tab)] 'tabbar-backward)
(global-set-key [(control tab)]       'tabbar-forward)

这样,我们就可以快速地在各个tab中切换了。

另外,命令M-x tabbar-forward-groupM-x tabbar-backward-group则在各个tab组成的group里跳转。

Tabbar mode会自动帮你把Emacs里的文件分组。可是,默认的分组方法并不是每个人都喜欢,它会把后缀名相同的文件分为一组,比如说perl脚本都扔在一个组里,yaml文件又扔在另一个组里。写代码的时候,在这两个组里切换实在是太麻烦了!我就喜欢把除了Emacs Buffer之外的文件都放成一组,即我自己打开的文件放成一组。于是,我用下面这段代码来实现自己的想法:

(setq tabbar-buffer-groups-function
    (lambda (b) (list "All Buffers")))
(setq tabbar-buffer-list-function
    (lambda ()
        (remove-if
          (lambda(buffer)
             (find (aref (buffer-name buffer) 0) " *"))
          (buffer-list))))

我把上面的这些代码全部扔到我的.emacs文件里,就定义了我自己的tab功能,十分方便。

可以在Emacswiki上的TabBarMode里找到更多的配置技巧。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值