在Emacs中显示菜单/帮助屏幕的正确方法是什么?

时间:2016-07-19 17:37:30

标签: emacs menu

使用Org-mode和Magit等工具时,模式有时会显示帮助菜单。例如,org-mode export将显示一个很好的菜单,接受单个键然后执行一些命令。在Magit中,当查看状态视图时,它将接受标签以扩展暂存和提交区域。

对于Git和Org来说,这些区域可以很好地占据emacs框架的一些部分,这是最方便的。 emacs如何选择这个?

此外,这些视图是只读的,直到用户在Magit和状态视图的情况下按Tab键。创建控制编辑的视图时是否有最佳实践,但允许模式编辑文件并显示替代文本?

也许答案是看看这些功能A,B和C.这很好,我只是自己学习和试验。

2 个答案:

答案 0 :(得分:2)

Magit尤其不是Emacs中对弹出缓冲区最简单的介绍,但它确实很复杂且读起来很好。在您的机器上查找magit-popup.el,例如 Mx find-function RET magit-popup-mode-setup 。对我来说,该函数看起来像是开始阅读该文件的好选择。您可以在文件magit-define-popup

中的magit-push-popup中看到正在使用的宏magit-remote.el

最后,它归结为在新窗口中打开一个新缓冲区并为其提供一个具有所有键绑定的专用主模式。

另一个好的候选人是temp-buffer-*职能系列。

希望,这给了一些开始阅读的指示。

答案 1 :(得分:1)

使用Hydras显示菜单/帮助屏幕(Magit和org-mode)的简单方法是:

这是一个简短的elisp方法,它会给你一个像org-mode这样的菜单。例如:

(defhydra hydra-zoom (global-map "<f2>")
"zoom"
  ("g" text-scale-increase "in")
  ("l" text-scale-decrease "out")) 

ps:这不是org-mode和magit使用的。 Magit的系统直到最近才重复使用,我不知道它与Hydra相比如何。 Hydras的一个很好的功能是你可以告诉它在按键后不会消失,所以你可以连续按下很多键。