mblaze

Unix utilities to deal with Maildir - my mirror
git clone https://pi.duncano.de/git/mblaze.git

README (5732B)


      1 MBLAZE(7)              Miscellaneous Information Manual              MBLAZE(7)
      2 
      3 NAME
      4      mblaze – introduction to mblaze
      5 
      6 DESCRIPTION
      7      The mblaze message system is a set of Unix utilities to deal with mail
      8      kept in Maildir folders.
      9 
     10      Its design is roughly inspired by MH, the RAND Message Handling System,
     11      but it is a complete implementation from scratch.
     12 
     13      mblaze consists of these Unix tools that each do one job:
     14      maddr(1)     extract addresses from mail
     15      magrep(1)    find mails matching a pattern
     16      mcom(1)      compose and send mail
     17      mdeliver(1)  deliver messages or import mailboxes
     18      mdirs(1)     find Maildir folders
     19      mexport(1)   export Maildir folders as mailboxes
     20      mflag(1)     change flags (marks) of mail
     21      mflow(1)     reflow format=flowed plain text mails
     22      mfwd(1)      forward mail
     23      mgenmid(1)   generate Message-IDs
     24      mhdr(1)      extract mail headers
     25      minc(1)      incorporate new mail
     26      mless(1)     conveniently read mail in less(1)
     27      mlist(1)     list and filter mail messages
     28      mmime(1)     create MIME messages
     29      mmkdir(1)    create new Maildir
     30      mpick(1)     advanced mail filter
     31      mrep(1)      reply to mail
     32      mscan(1)     generate one-line summaries of mail
     33      msed(1)      manipulate mail headers
     34      mseq(1)      manipulate mail sequences
     35      mshow(1)     render mail and extract attachments
     36      msort(1)     sort mail
     37      mthread(1)   arrange mail into discussions
     38 
     39 PRINCIPLES
     40      mblaze is a classic command line MUA and has no features for receiving or
     41      transferring mail; you are expected to fetch your mail using fdm(1),
     42      getmail(1) offlineimap(1), procmail(1), or similar , and send it using
     43      dma(8), msmtp(1), sendmail(8), as provided by OpenSMTPD, Postfix, or
     44      similar.  mblaze expects your mail to reside in Maildir folders.
     45 
     46      mblaze operates directly on Maildir folders and doesn't use its own
     47      caches or databases.  There is no setup needed for many uses.  All tools
     48      have been written with performance in mind.  Enumeration of all mails in
     49      a Maildir is avoided unless necessary, and then optimized to limit
     50      syscalls.  Parsing mail metadata is optimized to limit I/O requests.
     51      Initial operations on a large Maildir may feel slow, but as soon as they
     52      are in the file system cache, everything is blazingly fast.  The tools
     53      are written to be memory efficient (i.e. not wasteful), but whole
     54      messages are assumed to fit into RAM easily (one at a time).
     55 
     56      mblaze has been written from scratch and tested on a large corpus of
     57      personal mail, but is not actually 100% RFC-conforming (which is neither
     58      worth it nor desirable).  There may be issues with very old,
     59      nonconforming, messages.
     60 
     61      mblaze is written in portable C, using only POSIX functions (apart from a
     62      tiny Linux-only optimization), and has no external dependencies.  It
     63      supports MIME and more than 7-bit messages (everything the host iconv(3)
     64      can decode).  It assumes you work in a UTF-8 environment.  mblaze works
     65      well together with other Unix mail tools such as mairix(1), mu(1), or
     66      offlineimap(1).
     67 
     68 EXAMPLES
     69      mblaze tools are designed to be composed together in a pipe.  They are
     70      suitable for interactive use and for scripting, and integrate well into a
     71      Unix workflow.
     72 
     73      For example, you could decide you want to look at all unseen mail in your
     74      INBOX, oldest first.
     75            mlist -s ~/Maildir/INBOX | msort -d | mscan
     76 
     77      To operate on a set of mails in multiple steps, you can save it as a
     78      sequence, e.g. add a call to ‘mseq -S’ to the above command:
     79            mlist -s ~/Maildir/INBOX | msort -d | mseq -S | mscan
     80 
     81      Now mscan will show message numbers and you could look at the first five
     82      mails at once, for example:
     83            mshow 1:5
     84 
     85      Likewise, you could decide to incorporate (by moving from new to cur) all
     86      new mail in all folders, thread it and look at it interactively:
     87            mdirs ~/Maildir | xargs minc | mthread | mless
     88 
     89      Or you could list the attachments of the 20 largest mails in your INBOX:
     90            mlist ~/Maildir/INBOX | msort -S | tail -20 | mshow -t
     91 
     92      Or apply the patches from the current mail:
     93            mshow -O. '*.diff' | patch
     94 
     95      As usual with pipes, the sky is the limit.
     96 
     97 CONCEPTS
     98      mblaze deals with messages (which are files), folders (which are Maildir
     99      folders), sequences (which are newline-separated lists of messages,
    100      possibly saved on disk in ${MBLAZE:-$HOME/.mblaze}/seq), and the current
    101      message (kept as a symlink in ${MBLAZE:-$HOME/.mblaze}/cur).
    102 
    103      Messages in the saved sequence can be referred to using special syntax as
    104      explained in mmsg(7).
    105 
    106      Many utilities have a default behavior when used interactively from a
    107      terminal (e.g. operate on the current message or the current sequence).
    108      For scripting, you must make these arguments explicit.
    109 
    110      For configuration, see mblaze-profile(5).
    111 
    112 SEE ALSO
    113      mailx(1), mblaze-profile(5), nmh(7)
    114 
    115 AUTHORS
    116      Leah Neukirchen <leah@vuxu.org>
    117 
    118      There is a mailing list available at mblaze@googlegroups.com (to
    119      subscribe, send a mail to mblaze+subscribe@googlegroups.com.  Please
    120      report security-related bugs directly to the author), as well as an IRC
    121      channel #vuxu on irc.freenode.net.
    122 
    123 LICENSE
    124      mblaze is in the public domain.
    125 
    126      To the extent possible under law, the creator of this work has waived all
    127      copyright and related or neighboring rights to this work.
    128 
    129      http://creativecommons.org/publicdomain/zero/1.0/
    130 
    131 Void Linux                       June 30, 2017                      Void Linux