zblog usage 0. Introduction zblog has got different modes of operation. Additionally, it understands a few support commands. 1. Email Filtering Modes zblog can be used to blog via email. To automatically handle blog mails, you can use zblog (in one of its filtering modes) as a recipe in your MDA or in your .forward file (or equivalent). + email This is the primary filtering mode that only accepts encrypted emails. It expects an gpg encrypted email on stdin. This could be used with '.forward' or 'procmail' or whatever. This mode also saves attachments to the media dir; That way you are able to do postings that incorporate images (or other media) this may contain postings or command. + plain This mode works almost exactly like the 'email' mode, but it uses plaintext as its input format. PLEASE NOTE THAT THIS MODE IS ONLY THERE FOR TESTING PURPOSES! DO NOT USE THIS MODE FOR NORMAL OPERATION! The filter modes understand different kinds of messages, it distinguishes from by reading the Subject: header of the email. Only the starting part of the subject is important. So, 'post' messages are recognized with subjects like 'post', 'posting' 'posted', etc. Available Message Types: The message formats are described in 'doc/Format_*'. Note, that the 'Date:' header is _needed_! If you leave it out, nothing will work. The 'Subject:' header is needed as well, of course. + post + comm + diff 2. Command Mode The 'commands' argument to zblog starts the script in command mode. This handles commands (which are you may use in emails as well) directly on stdin. Available Commands: TODO + addcat + removecat + stick + unstick + diff, edit, patch + chdate|redate + remove + post + mupload, mediaupload, mup + atomize + update + fupdate 3. CLI Interface Some important actions and support commands are available directly at the command line interface. Interface Commands: + atomize recreates the atom feed. + exports triggers the exports_hook() function Personally I'm using this hook to create a pdf document of my blog's index page. + update causes zblog to update changed pages. + fupdate forces zblog to update _all_ pages. + genlastmod generates a string that may be used in a posting's Last-Modified: header. I am using the following vim commands, to automatically update that header: :let x_lastmod = system("zblog genlastmod") :execute '/^Last-Modified:/s/\(Last-Modified:\) .*$/\1 ' . x_lastmod . '/' I actually bind these commands to a key, so I can update the Last-Modified: header with one keypress. The relevant parts of my vim configuration are available in the 'contrib' sub directory. + lsreplaces This generates a list of replaces you may use in your template. + version This outputs the version of the installed zblog.