# HG changeset patch # User markus schnalke # Date 1342388655 -7200 # Node ID 157c92fc1597c8532f451f5dc890bda26478be43 # Parent 27c28990b844139bbcb3869f0d7888db18000892 Further improvements. diff -r 27c28990b844 -r 157c92fc1597 discussion.roff --- a/discussion.roff Sun Jul 15 21:57:51 2012 +0200 +++ b/discussion.roff Sun Jul 15 23:44:15 2012 +0200 @@ -263,7 +263,7 @@ but possibly limit the information exchange. External libraries are more strongly connected than external programs, thus information can be exchanged in a more flexible manner. -Adding code to a project increases maintenance work. +Obviously, adding code to a project increases the maintenance work. As implementing complex functions in the project itself adds a lot of code, this should be avoided if possible. Thus, the dependencies only change in their character, @@ -458,6 +458,9 @@ .Id mhshow .P Since the very beginning, already in the first concept paper, +.[ +original memo rand mh shapiro gaines +.] .Pn show had been MH's message display program. .Pn show @@ -627,25 +630,22 @@ .U3 "Mail Transfer Facilities .P -With the removal of the mail transfer facilities 5 configure -options vanished: +With the removal of the mail transfer facilities (cf. Sec. +.Cf mail-transfer-facilities ) +five configure options vanished: .P The switches .Sw --with-tls and .Sw --with-cyrus-sasl had activated the support for transfer encryption and authentication. -.\" XXX cf -.\" XXX gruende kurz wiederholen They are not needed anymore. .Ci fecd5d34f65597a4dfa16aeabea7d74b191532c3 .Ci 156d35f6425bea4c1ed3c4c79783dc613379c65b .P -.\" XXX cf -.\" XXX ``For the same reason ...'' The configure switch .Sw --enable-pop -activated the message retrieval facility. +had activated the message retrieval facility. Whereas the code area that had been conditionally compiled in for TLS and SASL support was small, the conditionally compiled code area for POP support was much larger. @@ -660,13 +660,13 @@ of the original program. More variations require more testing and maintenance work. .P -Two other options only specified default configuration values: +Two other options had only specified default configuration values: .Sw --with-mts defined the default transport service .Ci f6aa95b724fd8c791164abe7ee5468bf5c34f226 . With .Sw --with-smtpservers -default SMTP servers could be specified +default SMTP servers could be set .Ci 128545e06224233b7e91fc4c83f8830252fe16c9 . Both of them became irrelevant when the SMTP transport service was removed. In mmh, all messages are handed over to @@ -714,6 +714,7 @@ .U3 "Editor and Pager +.Id editor-pager .P The two configure options .CW --with-editor=EDITOR @@ -993,9 +994,9 @@ .H2 "Command Line Switches .P -The command line switches of MH tools follow a style similar to -the X Window System style. -The switches consist of a single dash (`\fL-\fP') followed by a word. +The command line switches of MH tools are similar in style to the +switches in the X Window System. +They consist of a single dash (`\fL-\fP') followed by a word. For example .Cl -truncate . To ease typing, the word can be abbreviated, given the remaining @@ -1136,8 +1137,9 @@ .P A change early in the project was the complete transition from the single draft message to the draft folder facility -.Ci 337338b404931f06f0db2119c9e145e8ca5a9860 . -.\" XXX ref to section ... +.Ci 337338b404931f06f0db2119c9e145e8ca5a9860 +(cf. Sec. +.Cf draft-folder ). The draft folder facility was introduced in the mid-eighties, when Rose and Romine called it a ``relatively new feature''. .[ @@ -1172,13 +1174,6 @@ the rework of the draft system (cf. Sec. .Cf draft-folder ). -Furthermore, -.Pn comp -no longer needs a -.Sw -file -switch as the draft folder facility together with the -.Sw -form -switch are sufficient. .U3 "In Place Editing @@ -1509,7 +1504,6 @@ nor does it page the output itself (\c .Sw -length .Ci 5b9d883db0318ed2b84bb82dee880d7381f99188 ). -.\" XXX Ref Generally, the pager to use is no longer specified with the .Sw -[no]moreproc command line switches for @@ -1746,8 +1740,7 @@ But it can not ensure verbatim end-to-end delivery of the contents [RFC\|1864]. The proper approach to verify content integrity in an -end-to-end relationship is the use of digital signatures. -.\" XXX (RFCs FIXME). +end-to-end relationship is the use of digital signatures [RFC\|4880]. On the other hand, transfer protocols should detect corruption during the transmission. The TCP includes a checksum field therefore. @@ -1990,7 +1983,6 @@ attachment header or non-ASCII text is present. Furthermore, the hash character (`\fL#\fP') is not special any more at line beginnings in the draft message. -.\" XXX REF ? Users need not concern themselves with the whole topic at all. .P Although the new approach does not anymore support arbitrary MIME @@ -2181,6 +2173,7 @@ .U3 "Showing MIME Messages +.Id showing-mime-msgs .P The program .Pn mhshow @@ -2203,8 +2196,9 @@ One should note that this section completely ignores the original .Pn show program, because it was not capable to display MIME messages -and is no longer part of mmh. -.\" XXX ref to other section +and is no longer part of mmh +(cf. Sec. +.Cf mhshow ). Although .Pn mhshow was renamed to @@ -2242,13 +2236,14 @@ The only place in mmh, where a pager is invoked is .Pn mhshow . .P -In the intended setup, only text content is be displayed, -in a single pager session. +Only text content is displayed. +Other kinds of attachments are ignored. Non-text content needs to be converted to text by appropriate .Pe mhshow-show-* profile entries before, if this is possible and wanted. A common example for this are PDF files. -In mmh, MIME parts are always displayed serially. +.P +MIME parts are always displayed serially. The request to display the MIME type `multipart/parallel' in parallel is ignored. It is simply treated as `multipart/mixed' @@ -2262,12 +2257,6 @@ .Pe mhshow-show-* profile entries became useless and was thus removed .Ci a20d405db09b7ccca74d3e8c57550883da49e1ae . -.P -Other kinds of attachments are ignored. -With -.Pe mhshow-show-* -profile entries for them, they can be displayed serially along -the message. For parallel display, the attachments need to be stored to disk first. .P To display text content in foreign charsets, they need to be converted @@ -3243,19 +3232,18 @@ I clarified the path name conversion by complete rework. First of all, the terminology needed to be defined. A path name is either in the Unix domain, then it is called -\fIdirectory path\fP (\fIdirpath\fP for short) or it is in the MH domain, -then it is called \fIfolder path\fP (\fIfolpath\fP for short). +\fIdirectory path\fP or it is in the MH domain, +then it is called \fIfolder path\fP. The two terms need to be used with strict distinction. -Often a clear terminology indicates that the problem is understood. Second, I exploited the concept of path type indicators. By requiring every path name to start with a distinct type identifier, the conversion between the types could be fully automated. -This allows the tools to accept paths of any type from the user. +This allows the tools to accept path names of any type from the user. Therefore, it was necessary to require relative directory paths to be prefixed with a dot character. In consequence, the dot character could no longer be an alias for the -current message. -.Ci cff0e16925e7edbd25b8b9d6d4fbdf03e0e60c01 +current message +.Ci cff0e16925e7edbd25b8b9d6d4fbdf03e0e60c01 . Third, I created three new functions to replace the previous mess: .LI 1 .Fu expandfol() diff -r 27c28990b844 -r 157c92fc1597 intro.roff --- a/intro.roff Sun Jul 15 21:57:51 2012 +0200 +++ b/intro.roff Sun Jul 15 23:44:15 2012 +0200 @@ -3,15 +3,17 @@ .Id introduction .P -MH is a set of mail handling tools with a common concept, similar to -the Unix tool chest, which is a set of file handling tools with a common -concept. \fInmh\fP is the currently most popular implementation of an +MH is a set of mail handling tools with a common concept. +It is similar to the Unix tool chest, which is a set of file +handling tools with a common concept. +\fInmh\fP is the currently most popular implementation of an MH-like mail handling system. This thesis describes an experimental version of nmh, named \fImmh\fP. .P This chapter introduces MH, its history, concepts and how it is used. It describes nmh's code base and community to give the reader -a better understanding of the state of mmh when it started off. +a better understanding of the project's condition at the time when +mmh started off. Furthermore, this chapter outlines the mmh project itself, describing the motivation for it and its goals. @@ -271,8 +273,15 @@ This project model was inspired by \fIdwm\fP, which is Anselm Garbe's personal window manager \(en targeted to satisfy Garbe's personal needs whenever conflicts appear. -Dwm has retained its lean elegance and its focused character, whereas -its community-driven predecessor \fIwmii\fP had grown fat over time. +Dwm has retained its lean elegance and its focused character, +.[ +dwm ohloh +.] +whereas its community-driven predecessor \fIwmii\fP had grown +fat over time. +.[ +wmii ohloh +.] The development of mmh should remain focused. @@ -285,6 +294,9 @@ on top of the tool chest quickly and without internal knowledge. Additionally, tool chests are easier to maintain than monolithic programs. +.[ [ +gancarz unix phil +.], p. 14] MH-like email tool chests should be kept alive as they fill a market niche by providing conceptional elegance and unique scripting qualities. Mmh tries to create a modern and convenient entry point to MH-like diff -r 27c28990b844 -r 157c92fc1597 refs.roff --- a/refs.roff Sun Jul 15 21:57:51 2012 +0200 +++ b/refs.roff Sun Jul 15 23:44:15 2012 +0200 @@ -17,6 +17,10 @@ .I "Standard for the Format of ARPA Internet Text Messages", August 1982. +.IP RFC\|934 +.I "Proposed Standard for Message Encapsulation", +January 1985. + .IP RFC\|1864 .I "The Content-MD5 Header Field", October 1995. diff -r 27c28990b844 -r 157c92fc1597 web.bib --- a/web.bib Sun Jul 15 21:57:51 2012 +0200 +++ b/web.bib Sun Jul 15 23:44:15 2012 +0200 @@ -38,3 +38,13 @@ %T History of MH %O \fU http://rand-mh.sourceforge.net/book/overall/hiofmh.html %K website + +%L web:\|sloc-dwm +%T dwm: Lines of Code Through Time +%I Ohloh +%O \fU http://\:www.ohloh.net/\:p/\:dwm/\:analyses/\:latest/\:languages_summary + +%L web:\|sloc-wmii +%T wmii: Lines of Code Through Time +%I Ohloh +%O \fU http://\:www.ohloh.net/\:p/\:wmii/\:analyses/\:latest/\:languages_summary