diff --git a/Home.md b/Home.md index 73249ec..c3fedea 100644 --- a/Home.md +++ b/Home.md @@ -6,7 +6,10 @@ The mailing list archive is at [gmane.emacs.el-get.devel](http://blog.gmane.org/ # Guidelines for Recipe Authors -An el-get recipe should make code available on the local machine as though it were packaged with emacs. This means: don't turn on global-minor-modes, but it's OK to make sure that major modes for files are added to auto-mode-alist. `:feature` and `:load` should be discouraged, and only used if there's no way to make an autoload work, or if the package provides its own autoload file (e.g. nognus' `gnus-load.el`). In such cases, prefer `:feature` to `:load`, as the former will pick up the compiled version of the file, if any. +An el-get recipe should make code available on the local machine as though it were packaged with emacs. This means: -If the upstream package doesn't mark its primary functions with a [autoload cookies](http://www.gnu.org/software/emacs/elisp/html_node/Autoload.html) or provide its own autoload file, it's acceptable to add a :pre-init or :post-init that calls `(autoload ...)` "manually". But in general this should be discouraged; try to get it fixed upstream instead. The same goes for adding modes to auto-mode-alist -- the mode should do this itself for commonly-used unambiguous file patterns, but if it doesn't, you can add it to the recipe. +1. Don't turn on global-minor-modes; +1. Major modes for files can be added to `auto-mode-alist` for commonly-used unambigous file patterns. But in general this should be discouraged; try to get it fixed upstream instead; +1. `:feature` and `:load` should be discouraged, and only used if there's no way to make an autoload work, or if the package provides its own autoload file (e.g. nognus' `gnus-load.el`). In such cases, prefer `:feature` to `:load`, as the former will pick up the compiled version of the file, if any; +1. If the upstream package doesn't mark its primary functions with a [autoload cookies](http://www.gnu.org/software/emacs/elisp/html_node/Autoload.html) or provide its own autoload file, it's acceptable to add a :pre-init or :post-init that calls `(autoload ...)` "manually". But in general this should be discouraged; try to get it fixed upstream instead.