我维护了许多elisp软件包(例如codesearch,emacs-ycmd,traad),这些软件包将从能够安装它们使用的外部程序中受益,从而节省了一些用户的时间和精力。例如,使用codesearch.el能够为用户下载,编译和安装codesearch工具(用go编写,而不是elisp编写)会很好。这将消除使用包装的至少一个障碍。
是否有“最佳做法”来做到这一点?例如,我应该将外部程序放在哪里?
如果您没有任何直接的建议,能否将我推荐给做类似事情的软件包(最好是做得很好)?
1
考虑到您无法控制用户的Emacs操作系统是使用Linux,Windows还是Mac OS作为引导程序,恐怕这可能在极其困难和不可能之间。
—
mbork 2014年
恐怕最好将外部程序与Emacs软件包分离,以获得最大的灵活性。为Emacs软件包提供外部软件的方法似乎最适合被解释的诸如Ruby / Python / TeX / ...文件之类的东西。为Emacs Lisp代码提供通过系统的软件包管理器安装的软件包的相反方法(如mu和不多做)灵活性较差,因为您无法自动加载。
—
wasamasa
看来你们两个是对的。我可以找到提供外部依赖关系的emacs软件包的唯一示例,例如jedi,它在elpa软件包中捆绑了一些python脚本。
—
2014年
这是我们可以在Emacs 25中通过动态加载完成的功能吗?
—
wdkrnls