8137411501ff867769e7d9176b091333977e702c
[pelican-mode.git] / README.md
1 pelican-mode is an Emacs minor mode for editing pages and posts in
2 [Pelican] sites.
3
4 It's intended to be used alongside [markdown-mode] or [rst-mode]. It
5 also assumes you've set up Pelican with `pelican-quickstart` or
6 something like it. In particular it assumes:
7
8 * The existence of `pelicanconf.py` and `Makefile` in some ancestor
9 directory.
10 * The first component of the path (e.g. `content`) after that
11 ancestor is irrelevant.
12 * If the next component is `pages`, that indicates a static page
13 rather than a dated post.
14
15 It also enforces some parts of my preferred Pelican configuration:
16
17 * Categories are never provided (you can have one if you want, but
18 the default interactive commands don't provide one).
19 * Tags are always provided.
20 * Slugs are explicit, and include nested subdirectories.
21
22 ## Quick Guide
23
24 * `C-c P n` - Insert a post or page header
25 * `C-c P p` - Remove draft status from a post (i.e. publish it)
26 * `C-c P t` - Update the date field in a post/page header
27 * `C-c P h` - Generate HTML output for a site (equivalent to `make html`)
28 * `C-c P u` - Upload a site using rsync (equivalent to `make rsync_upload`)
29
30 ## Troubleshooting
31
32 If the commands which invoke `make` can find the Makefile but can't
33 find `pelican`, your `exec-path` may not be set right. Try out
34 [exec-path-from-shell].
35
36 ## License
37
38 This code is released into the public domain via the
39 [CC0 Public Domain Dedication][0].
40
41 [Pelican]: http://getpelican.com/
42 [markdown-mode]: http://jblevins.org/projects/markdown-mode/
43 [rst-mode]: http://docutils.sourceforge.net/docs/user/emacs.html
44 [exec-path-from-shell]: https://github.com/purcell/exec-path-from-shell
45 [0]: http://creativecommons.org/publicdomain/zero/1.0/legalcode