没有长时间使用Emacs(v23,windows)并且刚刚发现M-x ediff.太棒了.虽然我不想热衷于它在一个单独的框架/窗口中打开它的帮助/导航,这意味着如果我失去对该窗口的焦点,单键快捷键不起作用.
例如,当我按下?以展开窗口时,它会移动到当前窗口的顶部,因此我必须拿起鼠标并将其移动到另一个屏幕.然后,如果我将焦点丢失到该窗口并按p/ n/ j或任何其他键来处理diff,它会将其插入到我的文档中.所以我必须撤消,抓住鼠标,聚焦到其他窗口,然后重复.
有没有办法配置这些选项以显示拆分?
Dav*_*ski 31
我不知道该怎么做,但通常很容易用Emacs学习.首先我询问了ediff自定义:
M-x customize-apropos
ediff
Run Code Online (Sandbox Code Playgroud)
我看到有一种称为Ediff Window Setup Function的东西,它取值Multi Frame,Single Frame或Other Function.我被设置为多帧并将其更改为单帧并将其保存以供将来的会话使用.还有瞧!正如他们在某处说的那样.
sts*_*uad 22
只是:
(setq ediff-window-setup-function 'ediff-setup-windows-plain)
Run Code Online (Sandbox Code Playgroud)
Mx describe-variable ediff-window-setup-function将进一步启发你.
作为参考,我的ediff定制非常简单:
(if (locate-library "ediff")
(progn
(autoload 'ediff-files "ediff")
(autoload 'ediff-buffers "ediff")
(eval-after-load "ediff" '(progn
(message "doing ediff customisation")
(setq diff-switches "-u"
ediff-custom-diff-options "-U3"
ediff-split-window-function 'split-window-horizontally
ediff-window-setup-function 'ediff-setup-windows-plain)
(add-hook 'ediff-startup-hook 'ediff-toggle-wide-display)
(add-hook 'ediff-cleanup-hook 'ediff-toggle-wide-display)
(add-hook 'ediff-suspend-hook 'ediff-toggle-wide-display)))))
Run Code Online (Sandbox Code Playgroud)
(custom-set-variables
...
'(ediff-window-setup-function (quote ediff-setup-windows-plain))
...)
Run Code Online (Sandbox Code Playgroud)
并不是说你会以这种方式设置变量,但它可以让你知道这些事情:
ediff-window-setup-functionediff-setup-windows-plain您可以从自定义配置变量: M-x customize-group RET ediff-window
Ediff窗口设置功能:菜单单帧
| 归档时间: |
|
| 查看次数: |
3988 次 |
| 最近记录: |