Helm是一个很好的选择和自动完成框架。阅读Emacs Wiki上的Anything页面,我知道Helm是从Anything进化而来的。该页面建议用户更新为Anything编写的扩展,以便与Helm一起使用,但没有提供如何使用的说明。Helm-wiki没有提供任何关于使用Helm框架编写扩展的有用信息(它甚至是用户不可编辑的,包含没有人修复的语法错误或拉取请求不被接受,我觉得这真的很不受欢迎)。我最近广泛使用了Helm,非常喜欢它,我想写一个备忘单(类似于优秀的Clojure备忘单)来更好地为我的工作流程服务。所以我的问题是:
-
(过时的)有什么文件适用于当前的Helm吗?它的兼容性如何?
-
有没有关于Helm的有用文档来解释它是如何工作的以及如何使用它编写扩展的?我在谷歌上搜索了一段时间,但找不到任何有用的东西。
我是一个Lisper,我一点也不介意阅读源代码。然而,这是一个耗时的过程,所以在决定深入研究源代码之前,我只想先查找所有可用的信息。
就为helm编写新的扩展而言,我推荐16分钟的视频:https://github.com/krisajenkins/helm-spotify
关于Helm的日常使用,请在自己的联盟中检查一个包
John Kitchin编写了一个非常好的教程:http://wikemacs.org/wiki/How_to_write_helm_extensions
(三个原创博客中的第一个:http://kitchingroup.cheme.cmu.edu/blog/2015/01/24/Anatomy-of-a-helm-source/)
他介绍:
- 具有固定候选集的最简单的helm接口
- 一组简单的动态候选者
- 从cons单元格列表中选择的一组简单固定的候选者
- 候选人和一个行动
- 多个操作
- 处理多项选择
- 没有匹配项时的操作
非常感谢,谢谢约翰!
最新的helm wiki是https://github.com/emacs-helm/helm/wiki.这可能对emacs掌舵用户有用。