CentOs 6上的Emacs 23.1.1 Ediff 2.81.2
在进行任何定制之前,默认情况下,Ediff会水平拆分窗口(一个窗口在另一个窗口之上)。
我想把它们并排放在一起,所以我尝试在.emacs中添加以下代码行
(setq ediff-split-window-function 'split-window-vertically)
(setq ediff-merge-split-window-function 'split-window-vertically)这没有效果-窗口仍然是水平分割的。我还尝试使用Ediff的Emacs定制接口来获得默认的垂直拆分--同样的故事。
请注意,我在与垂直拆分的两个缓冲区进行比较时尝试了此方法。我还在缓冲区中没有打开文件的情况下尝试,并要求Ediff比较两个文件-相同的结果。
然后,我尝试指定split- window -horizontally作为ediff-split和ediff-merge的拆分窗口函数。
(setq ediff-split-window-function 'split-window-horizontally)
(setq ediff-merge-split-window-function 'split-window-horizontally)这导致窗口垂直拆分(彼此相邻)。当我注释掉这些行并使用Emacs定制界面设置这些选项时,也是如此。
是的,我见过this question,但我不想在全局的基础上消除水平拆分--我只想让Ediff默认这么做。
我是不是疯了,或者是有人改变了“水平”和“垂直”的含义(顺便说一下,我从O‘’Reilly的“学习Gnu Emacs”一书中拿出了“垂直”和“水平”的定义)?
发布于 2012-03-21 21:30:01
我使用了emacs变量定制,并通过C-h v ediff-split-window-function调用来更改该值。单击Save for future sessions后,会在我的.emacs中写入以下内容
(custom-set-variables
...
'(ediff-split-window-function (quote split-window-horizontally))
...)它做的正是我想要的:把两个缓冲区并排放在一起。是的,emacs使用的是水平/垂直,与您的想法相反。如果你再读一遍this question,你会看到它的解释,其他人也很困惑。
发布于 2013-12-10 02:02:18
当你在2个文件加载的ediff模式下点击"|“时,从水平切换到垂直。
"?“给出了一个小的编辑帮助菜单。(我使用的是Debian Wheezy和emacs 23.4+1-4)
发布于 2015-05-10 00:46:24
虽然它不能完全解决您的问题,但您也可以使用一个函数来指定是垂直拆分还是水平拆分,具体取决于窗口大小:
(setq ediff-split-window-function 'split-window-sensibly)split-window-sensibly是built-in。
https://stackoverflow.com/questions/9705149
复制相似问题