我应该如何为一组相关功能提供帮助?

时间:2010-12-14 16:56:56

标签: emacs

我构建了tfs.el以允许开发人员在emacs中执行TFS事务(checkout,checkin等)。

tfs包中有13个交互式命令,如tfs/checkouttfs/renametfs/diff等等,我希望能够提供所有的帮助。他们在一个地方。所有可用功能的概述。

这样做的“emacs方式”是什么?我想到了定义一个额外的函数,比如tfs/help,它将在每个tfs函数上调用describe-function-1,然后在TFS-Help缓冲区中显示所有这些函数。

有更好的方法吗?

3 个答案:

答案 0 :(得分:2)

嗯,有很多“Emacs方式”。

最精彩的是撰写 info 页面,请参阅页面"Info for Experts",该页面基本上表示使用Texinfo并将其转换为 info < / em>页面。你可以像你想要的那样冗长,用户可以搜索,使用超链接等。用户可以通过 C-h F tfs / checkout 轻松到达那里。

一些人似乎这样做的另一种方法是为每个命令编写简短的文档字符串,以“查看tfs-mode的文档详细信息”结尾,并将所有常用文档放在docstring中对于tfs-mode。

某些软件包记录事件的另一种方式是在tfs.el文件的顶部添加一个大评论。

选择,他们都需要权衡。

答案 1 :(得分:1)

您可以使用

    (describe-bindings "\C-xv")

答案 2 :(得分:1)

您有多个相关命令。到目前为止,我猜,他们只与他们的名字有关。

有两种可能性浮现在脑海中:

  • 为这些东西创建一个模式。记录打开/关闭模式的命令的doc字符串中的所有内容。它可以是主要模式或次要模式。如果是次要模式,它可以是缓冲本地的或全局的。

  • 为此内容创建一个组(defgroup)并记录其文档字符串中的所有内容。

基本的想法是以某种方式关联这些命令:以某种方式将它们捆绑在一起,这样你就可以将它们一起记录为捆绑的文档。

随便,不知道更多,我的猜测是你可能想要创建一个全局次要模式。