代码之家  ›  专栏  ›  技术社区  ›  MDCore Dai Qizhi

Emacs上的选项卡式窗口

  •  28
  • MDCore Dai Qizhi  · 技术社区  · 14 年前

    我试着在windows中像vim那样获得多个标签页。在vim中,选项卡不绑定到缓冲区,您可以有多个选项卡,每个选项卡中都有多个拆分和缓冲区。到目前为止我发现:

    • 选项卡栏:显示所有选项卡。
    • winring:不在窗口中显示选项卡,使用起来很笨拙(必须先命名每个选项卡)。这是最接近我想要的。

    如果这是可能的,有人有什么想法吗?Tabs+emacs很难搜索;我找到的大部分内容都是关于空格和Tabs的讨论:)

    更新: 这张照片显示了我想要的东西。

    enter image description here

    多个选项卡和每个选项卡上的一堆分割缓冲区。

    3 回复  |  直到 12 年前
        1
  •  24
  •   Mahmoud Abdelkader    14 年前

    我用一种叫做 ElScreen

    下面是我用于ElScreen的代码,我甚至使用了与您在VIM中使用的相同类型的键绑定。 正文结束字符 :tabe :tabd 在维姆。

    在本例中,为了遍历下一个屏幕或选项卡,我使用 控制 _ 控制 .

    ;; ---------------------------------------
    ;; load elscreen
    ;; ---------------------------------------
    (load "elscreen" "ElScreen" t)
    
    ;; F9 creates a new elscreen, shift-F9 kills it
    (global-set-key (kbd "C-c t a b e") 'elscreen-create)
    (global-set-key (kbd "C-c t a b d") 'elscreen-kill)
    
    ;; Windowskey+PgUP/PgDown switches between elscreens
    (global-set-key (kbd "C-M-_") 'elscreen-previous)
    (global-set-key (kbd "C-M-+") 'elscreen-next)
    

    下面是选项卡设置的示例:

    alt text

    第二屏:

    alt text

    您可以使用 C-x公司 在选项卡中:)

        2
  •  4
  •   hatmatrix    14 年前

    tabbar 是目前为止我认为最流行的包,但是只显示与您正在编辑的模式相同的缓冲区的选项卡(例如,如果您在python模式下的文件中工作,它将只显示所有python模式缓冲区的选项卡)。不管怎样,这是默认的行为;我很确定如果你想的话,你可以自定义它。但我的印象是,在Emacs中管理多个缓冲区的一种流行方法是 ibuffer ido-mode . 例如,我的 .emacs

    (require 'ido)
    (ido-mode t)
    (global-set-key "\C-x\C-b" 'ibuffer)
    
        3
  •  1
  •   Jérôme Radix    14 年前

    你能做到的 C-x公司 4 c

    tabbar 例如,可以使用不同的选项卡以不同的模式显示相同的缓冲区。