docs/master

diff ch03.roff @ 78:64f177ca2af1

Text rework.
author markus schnalke <meillo@marmaro.de>
date Tue, 05 Jun 2012 22:24:10 +0200
parents 2e61e0004a8f
children ff4537327162
line diff
     1.1 --- a/ch03.roff	Tue Jun 05 22:23:51 2012 +0200
     1.2 +++ b/ch03.roff	Tue Jun 05 22:24:10 2012 +0200
     1.3 @@ -303,7 +303,9 @@
     1.4  .Pn slocal .
     1.5  .Pn slocal
     1.6  is an MDA and thus not directly MUA-related.
     1.7 -Conceptionally, it should be removed.
     1.8 +It should be removed, because including it is a violation
     1.9 +of the idea that mmh is a MUA only.
    1.10 +It should become a separate project.
    1.11  But
    1.12  .Pn slocal
    1.13  provides rule-based processing of messages, like filing them into
    1.14 @@ -332,9 +334,14 @@
    1.15  That's conceptionally the best solution.
    1.16  Yet,
    1.17  .Pn slocal
    1.18 -is not removed,
    1.19 -but as its existence does not affect the rest of mmh,
    1.20 -it can be removed at any time.
    1.21 +was not removed.
    1.22 +I feel unsure with the removal.
    1.23 +Hence, the decision over
    1.24 +.Pn slocal
    1.25 +is deferred.
    1.26 +This does not hurt because
    1.27 +.Pn slocal
    1.28 +is completely unrelated to the rest of mmh.
    1.29  
    1.30  
    1.31  .H2 "\fLshow\fP and \fPmhshow\fP
    1.32 @@ -358,10 +365,8 @@
    1.33  Instead of extending these tools, additional tools were written from scratch
    1.34  and then added to the MH tool chest. Doing so is encouraged by the
    1.35  tool chest approach. The new tools could be added without interfering
    1.36 -with the existing ones. This is an advantage. The ease of adding new tools
    1.37 -made MH the first MUA to implement MIME.
    1.38 -.\" XXX ref
    1.39 -.P
    1.40 +with the existing ones.
    1.41 +Modular design is a great advantage for extending a system.
    1.42  First, the new MIME features were added in form of the single program
    1.43  .Pn mhn .
    1.44  The command
    1.45 @@ -495,11 +500,20 @@
    1.46  The backup prefix is the string that was prepended to message
    1.47  filenames to tag them as deleted.
    1.48  By default it had been the comma character `\f(CW,\fP'.
    1.49 -There was a configure option to change the default to the hash symbol
    1.50 -`\f(CW#\fP':
    1.51 -.CW --with-hash-backup .
    1.52 -The implication of the hash symbol is that it introduces a comment
    1.53 -in the Unix shell.
    1.54 +In July 2000, Kimmo Suominen introduced
    1.55 +the configure option
    1.56 +.Sw --with-hash-backup
    1.57 +to change the default to the hash symbol `\f(CW#\fP'.
    1.58 +The choice was probably personal preference, because first, the
    1.59 +option was named
    1.60 +.Sw --with-backup-prefix.
    1.61 +and had the prefix symbol as argument.
    1.62 +Because giving the hash symbol as argument caused to many problems
    1.63 +for configure,
    1.64 +the option was limited to use the hash symbol as the default prefix.
    1.65 +This makes me believe, that the choice for the hash was personal preference.
    1.66 +Being it related or not, words that start with the hash symbol
    1.67 +introduce a comment in the Unix shell.
    1.68  Thus, the command line
    1.69  .Cl "rm #13 #15
    1.70  calls
    1.71 @@ -509,8 +523,9 @@
    1.72  To delete the backup files,
    1.73  .Cl "rm ./#13 ./#15"
    1.74  needs to be used.
    1.75 -.\" XXX check historical background
    1.76 -Besides this effect, the choice was personal preference.
    1.77 +Using the hash as backup prefix can be seen as a precaution agains
    1.78 +data loss.
    1.79 +.P
    1.80  I removed the configure option but added the profile entry
    1.81  .Pe backup-prefix ,
    1.82  which allows to specify an arbitrary string as backup prefix.
    1.83 @@ -519,8 +534,10 @@
    1.84  This change did not remove the choice but moved it to a location where
    1.85  it suited better.
    1.86  .P
    1.87 -Eventually, however, the new trash folder obsoleted the concept of the
    1.88 -backup prefix completely.
    1.89 +Eventually, however, the new trash folder concept
    1.90 +.Cf "Sec. XXX
    1.91 +obsoleted the concept of the backup prefix completely.
    1.92 +.Ci 8edc5aaf86f9f77124664f6801bc6c6cdf258173
    1.93  (Well, there still are corner-cases to remove until the backup
    1.94  prefix can be layed to rest, eventually.)
    1.95  .\" FIXME: Do this work in the code!
    1.96 @@ -626,17 +643,7 @@
    1.97  .U3 "ndbm
    1.98  .P
    1.99  .Pn slocal
   1.100 -is an MDA included in mmh.
   1.101 -This is a violation of the idea that mmh is a MUA only.
   1.102 -.Pn slocal
   1.103 -should become a separate project.
   1.104 -Nonetheless, ouf of convenience and due to lack of convincement,
   1.105 -yet it remains being part of mmh.
   1.106 -This is likely to change in the future.
   1.107 -Already,
   1.108 -.Pn slocal
   1.109 -was stripped down.
   1.110 -It used to depend on
   1.111 +used to depend on
   1.112  .I ndbm ,
   1.113  a database library.
   1.114  The database is used to store the `\fLMessage-ID\fP's of all
   1.115 @@ -649,24 +656,25 @@
   1.116  switch.)
   1.117  .P
   1.118  A variety of version of the database library exist.
   1.119 +.[
   1.120 +wolter unix incompat notes dbm
   1.121 +.]
   1.122  Complicated autoconf code was needed to detect them correctly.
   1.123  Further more, the configure switches
   1.124  .Sw --with-ndbm=ARG
   1.125  and
   1.126  .Sw --with-ndbmheader=ARG
   1.127  were added to help with difficult setups that would
   1.128 -not be detected automatically.
   1.129 +not be detected automatically or correctly.
   1.130  .P
   1.131  By removing the suppress duplicates feature of
   1.132  .Pn slocal ,
   1.133 -.Ci ecd6d6a20cb7a1507e3a20d6c4cb3a1cf14c6bbf
   1.134  the dependency on
   1.135  .I ndbm
   1.136 -was removed and 120 lines of complex autoconf could be saved.
   1.137 +vanished and 120 lines of complex autoconf code could be saved.
   1.138  .Ci ecd6d6a20cb7a1507e3a20d6c4cb3a1cf14c6bbf
   1.139 -The change removed funtionality too, but the value it would have added
   1.140 -is minor to the weight loss by dropping the dependency and 
   1.141 -the complex autoconf code.
   1.142 +The change removed funtionality too, but that is minor to the
   1.143 +improvement by dropping the dependency and the complex autoconf code.
   1.144  
   1.145  .U3 "mh-e Support
   1.146  .P