如今(2016)编写emacs-lisp的最佳实践是什么
- Rejeep编写了许多现代化的工具,因此你应该多看看他的博客,尤其是这篇文章
- 你可以仿照这个package 复用它的
Makefile
, Cask
, .travis.yml
文件以及它的package heade
- 如果你的package没有太复杂的UI,可以用ecukes 来写集成测试.
- 借助Travis来帮你在不同版本的emacs(使用evm)下编译(检查是否有warning)并测试你的package.
- 用
ert
对lisp函数作单元测试.
- 使用
Cask
管理依赖(这样一来,你使用Travis就更方便了,并且你开发时也不用全局安装依赖包了.
Names
这个package挺不错的,但是我觉得 nameless
更不错.
- 最好不要用melpa unstable上的pacakge,尽量用melpa stable上的package代替.
- dash, s, 等package都很不错,而且借助Cask与package.el,我们可以很方便的使用这些package提供的函数. 但是也推荐你优先使用seq.el, subr-x.el 中新增的类似功能的函数.
- 尽量使用静态作用域,方法是将
;;; -*- lexical-binding: t; -*-
放到文件的第一行位置.
- 将你的package发布到melpa或marmalade上,与别人分享.