Emacs - 多列一个缓冲区

Emacs - 多列一个缓冲区

问题描述:

我试图编辑一些汇编代码,它往往被格式化在漫长而薄的列表中。我希望能够使用我所拥有的一些水平空间,并且一次在屏幕上看到更多的代码。有没有一种方法让Emacs(或者其他编辑器)向我展示多列都指向相同的缓冲区?我们希望它能够从一列到另一列(如报纸中的文本)。C-x 3(emacs)和:vsplit(vim)非常适合代码中的多个单独视图。Emacs - 多列一个缓冲区

+1

CX 3和:vsplit非常适合代码中的多个单独视图,但我希望它从一列流向另一列(如报纸中的文本) – user119857 2009-06-09 14:24:03

+0

谢谢!我爱上了4-6个列代码查看,我尝试将所有代码格式化为30-40个字符,我非常喜欢这个结果 - 通过缩短所有行,不仅仅是自然短小,空间少得多被浪费了,我所有的屏幕空间都用来显示文本;另外,代码块变得更加二维,减轻了视觉理解和结构监督。 – 2016-01-08 01:38:00

follow-mode。 摘录:

跟随模式是次要的模式,使两个窗口,都显示相同的缓冲区,滚动作为一个高大要使用跟随模式,去框只有一个窗口,分裂“虚拟窗口。”它使用Cx 3并入两个并排窗口,然后键入Mx跟随模式。从此,您可以在两个窗口中的任何一个中编辑缓冲区,或者滚动任一个;另一个窗口跟着它。 在跟踪模式下,如果你在一个窗口中的可见部分之外,进入另一个窗口中可见部分移动点,即选择其他窗口再次,处理两个就好像它们是一个大亮点的部分。

这是emacs的默认行为分割窗口(CX 3垂直分割) 当你拿到两列二者均具有开放当前缓冲区

+1

但是在这种情况下,它并不处于跟随模式。跟随模式将确保每个缓冲区都位于“下一页”,这样您就可以通过移动眼睛而不是移动点来读取缓冲区。 – jrockway 2011-07-23 21:23:06

Vim可以做到这一点使用:vsplit - 你可以有相同的缓冲区在多个“窗口”中打开(这实际上是单个“窗口”中的部分)。

Documentation here

+2

emacs也可以做到这一点,正如问题中提到的那样,但这不是被问到的。 – justinhj 2009-06-15 20:52:26

+1

这个问题在我回复后进行了编辑。 – inkedmn 2009-06-16 13:24:38

+1

结合`:scrollbind`,你就在那里。 – bastibe 2011-07-24 09:10:48

使用垂直分割与C-X 3,这将当前缓冲区分成两列,可以用C-×○之间切换。

快速浏览一下Emacs的维基像你描述的不显示模式。然而,它不应该是太写一个...你只需要到窗口CX 3分裂和移动在其他窗口中的文本下来,当你移动文本,做同样的其他窗口...当你到了缓冲区的底部可能会出现

问题,你要光标立即去其他窗口的顶部?

嗯,也许它不那么容易。但它仍然应该是可行的......

的“Multipager”插件Vim可以对谁想要得到Vim的这种行为的人VIM分裂做到这一点。

从芯片博士的页面得到它:http://mysite.verizon.net/astronaut/vim/index.html#MPAGE

文档:http://mysite.verizon.net/astronaut/vim/doc/mpage.txt.html

我用这个函数来调用follow-mode,尽管这需要定制了不同的屏幕尺寸:

;;; I want a key to open the current buffer all over the screen. 
(defun all-over-the-screen() 
    (interactive) 
    (delete-other-windows) 
    (split-window-horizontally) 
    (split-window-horizontally) 
    (balance-windows) 
    (follow-mode t))