All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@git.madduck.net.
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
   1 <?xml version='1.0' encoding='ISO-8859-1'?>
 
   2 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
 
   3 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
 
   7 Process this file with an XSLT processor: `xsltproc \
 
   8 -''-nonet /usr/share/sgml/docbook/stylesheet/xsl/nwalsh/\
 
   9 manpages/docbook.xsl manpage.dbk'.  A manual page
 
  10 <package>.<section> will be generated.  You may view the
 
  11 manual page with: nroff -man <package>.<section> | less'.  A
 
  12 typical entry in a Makefile or Makefile.am is:
 
  14 DB2MAN=/usr/share/sgml/docbook/stylesheet/xsl/nwalsh/\
 
  18 manpage.1: manpage.dbk
 
  21 The xsltproc binary is found in the xsltproc package.  The
 
  22 XSL files are in docbook-xsl.  Please remember that if you
 
  23 create the nroff version in one of the debian/rules file
 
  24 targets (such as build), you will need to include xsltproc
 
  25 and docbook-xsl in your Build-Depends control field.
 
  29   <!-- Fill in your name for FIRSTNAME and SURNAME. -->
 
  30   <!ENTITY dhfirstname "<firstname>Martin F.</firstname>">
 
  31   <!ENTITY dhsurname   "<surname>Krafft</surname>">
 
  32   <!-- Please adjust the date whenever revising the manpage. -->
 
  33   <!ENTITY dhdate      "<date>September 30, 2007</date>">
 
  34   <!-- SECTION should be 1-8, maybe w/ subsection other parameters are
 
  35        allowed: see man(7), man(1). -->
 
  36   <!ENTITY dhsection   "<manvolnum>1</manvolnum>">
 
  37   <!ENTITY dhemail     "<email>madduck@madduck.net</email>">
 
  38   <!ENTITY dhusername  "martin f. krafft">
 
  39   <!ENTITY dhucpackage "<refentrytitle>MAILPLATE</refentrytitle>">
 
  40   <!ENTITY dhpackage   "mailplate">
 
  42   <!ENTITY debian      "<productname>Debian</productname>">
 
  43   <!ENTITY gnu         "<acronym>GNU</acronym>">
 
  44   <!ENTITY gpl         "&gnu; <acronym>GPL</acronym>">
 
  54       <holder>&dhusername;</holder>
 
  64     <refname>&dhpackage;</refname>
 
  66     <refpurpose>reformat mail drafts according to templates</refpurpose>
 
  70       <command>&dhpackage;</command>
 
  74             <arg choice="plain"><option>--auto</option></arg>
 
  75             <arg choice="plain"><option>-a</option></arg>
 
  80             <arg choice="plain"><option>--menu</option></arg>
 
  81             <arg choice="plain"><option>-m</option></arg>
 
  88             <arg choice="plain"><option>--new</option></arg>
 
  89             <arg choice="plain"><option>-n</option></arg>
 
  94             <arg choice="plain"><option>--editor</option></arg>
 
  95             <arg choice="plain"><option>-e</option></arg>
 
 100         <arg choice="plain"><option>--keep-unknown</option></arg>
 
 101         <arg choice="plain"><option>-k</option></arg>
 
 104         <arg choice="plain"><option>--verbose</option></arg>
 
 105         <arg choice="plain"><option>-v</option></arg>
 
 108         <arg choice="plain"><option>--debug</option></arg>
 
 109         <arg choice="plain"><option>-d</option></arg>
 
 111       <arg choice="plain"><replaceable>message file</replaceable></arg>
 
 114       <command>&dhpackage;</command>
 
 118             <arg choice="plain"><option>--auto</option></arg>
 
 119             <arg choice="plain"><option>-a</option></arg>
 
 124             <arg choice="plain"><option>--menu</option></arg>
 
 125             <arg choice="plain"><option>-m</option></arg>
 
 130         <arg choice="plain"><option>--keep-unknown</option></arg>
 
 131         <arg choice="plain"><option>-k</option></arg>
 
 134         <arg choice="plain"><option>--verbose</option></arg>
 
 135         <arg choice="plain"><option>-v</option></arg>
 
 138         <arg choice="plain"><option>--debug</option></arg>
 
 139         <arg choice="plain"><option>-d</option></arg>
 
 141       <arg choice="plain"><replaceable>< message data</replaceable></arg>
 
 144       <command>&dhpackage;</command>
 
 146         <arg choice="plain"><option>--help</option></arg>
 
 147         <arg choice="plain"><option>-h</option></arg>
 
 151       <command>&dhpackage;</command>
 
 153         <arg choice="plain"><option>--version</option></arg>
 
 154         <arg choice="plain"><option>-V</option></arg>
 
 159     <title>DESCRIPTION</title>
 
 161     <para><command>&dhpackage;</command> is a programme that reformats mail
 
 162       drafts according to a given template. The template may be specified on
 
 163       the command line, but mailplate can also use control information from
 
 164       the template files to automatically select an appropriate template
 
 165       (<option>--auto</option>). A selection menu feature is planned
 
 166       (<option>--menu</option>). </para>
 
 168     <para> Applying a template means obtainined select data from an existing
 
 169       mail message (unless <option>--new</option> is specified) and to fill it
 
 170       into appropriate slots in the template. Messages are processed in three
 
 171       parts: headers, body, and signature. </para>
 
 173     <para> When <option>--new</option> is given, an empty instantiation of the
 
 174       template is written to stdout. At the moment, <option>--new</option>
 
 175       cannot be combined with <option>--editor</option>.</para>
 
 177     <para> The template can define two types of headers: mandatory and
 
 178       preservatory. Mandatory headers take precedence over headers in the
 
 179       existing message and thus overwrite them. Preservatory headers instruct
 
 180       mailplate to port their data from the existing mail message. Headers in
 
 181       the existing message but not defined in the template are dropped, unless
 
 182       <option>--keep-unknown</option> is given. </para>
 
 184     <para> Body and signature are separated by '-- '. If this sentinel is not
 
 185       found, no signature is extracted. Templates can be interpolated and data
 
 186       filled into slots. Helper slots are filled with the output of helper
 
 187       commands (which must be defined in the configuration), environment
 
 188       variable slots are just that, and mail variable slots can be filled with
 
 189       data obtained by running regexps or commands over the message. </para>
 
 191     <para> This script can be run in multiple ways: </para>
 
 194       <listitem><para> As a filter, it applies a template to data from stdin
 
 195           and writes the result to stdout. </para></listitem>
 
 197       <listitem><para> Given a file, it modifies the file, unless it cannot
 
 198           write to the file, in which case it writes to stdout.
 
 201       <listitem><para> When <option>--editor</option> is passed, the script
 
 202           spawns <command>sensible-editor</command> on the result. It may thus
 
 203           be used as the editor for your mail user agent. </para></listitem>
 
 210     <title>OPTIONS</title>
 
 212     <para> These programs follow the usual &gnu; command line syntax, with
 
 213       long options starting with two dashes (`--'): </para>
 
 217         <term><option>--auto</option>,
 
 221           <para>Turn on template auto-discovery.</para>
 
 225         <term><option>--menu</option>,
 
 229           <para>Choose from a list of templates (not yet implemented)</para>
 
 233         <term><option>--new</option>,
 
 237           <para>Create a new message.</para>
 
 241         <term><option>--editor</option>,
 
 245           <para>Spawn editor once template is applied.</para>
 
 249         <term><option>--keep-unknown</option>,
 
 253           <para>Preserve mail headers not specified in template.</para>
 
 257         <term><option>--verbose</option>,
 
 261           <para>Write informational messages to stderr.</para>
 
 265         <term><option>--debug</option>,
 
 269           <para>Start a debugger after initialisation.</para>
 
 274           <option>--help</option>,
 
 278           <para>Show summary of options.</para>
 
 283           <option>--version</option>,
 
 287           <para>Show version of program.</para>
 
 294     <title>SEE ALSO</title>
 
 295     <para>/usr/share/doc/mailplate/README</para>
 
 299     <title>AUTHOR</title>
 
 301     <para>This manual page was written by &dhusername; &dhemail; with help
 
 302       from Carl Fürstenberg.</para>