# HG changeset patch # User markus schnalke # Date 1336318425 -7200 # Node ID 7a100c80fa914406650d8d3a7fd23cb3bc4a4eb5 # Parent ab5253e48c7483ca17f5fc937488d8decccb751f Some new text (show/mhshow; prompter). diff -r ab5253e48c74 -r 7a100c80fa91 ch03.roff --- a/ch03.roff Tue Apr 24 18:02:08 2012 +0200 +++ b/ch03.roff Sun May 06 17:33:45 2012 +0200 @@ -6,7 +6,7 @@ .H1 "Removal of Code Relicts .P -The code base of mmh originates in the late 70s, had been extensively +The code base of mmh originates from the late 70s, had been extensively worked on in the mid 80s, and had been partly reorganized and extended in the 90s. Relicts of all those times had gathered in the code base. My goal was to remove any ancient code parts. One part of the task was @@ -33,12 +33,13 @@ I'm thankful for this task being solved. I only pulled the changes into mmh. .P -The other task of dropping ancient functionality to remove old code, +The other task \(en dropping ancient functionality to remove old code \(en I did myself, though. My position to strip mmh to the bare minimum of frequently used features is much more revolutional than the nmh community -sees it. Without the need to justify my decisions, I was able to quickly -remove code I considered ancient. The need to discuss my decisions with -peers likely would have slowed this process down. Of course, I did research +likes it. Without the need to justify my decisions, I was able to quickly +remove functionality I considered ancient. +The need to discuss my decisions with +peers likely would have slowed this process down. Of course, I researched if a particular feature really should be dropped. Having not had any contact to this feature within my computer life was a first indicator to drop it, but I also asked others and searched the literature for modern @@ -122,6 +123,31 @@ I value its usefulnes less than the improvement in maintainability, caused by the removal. +.U2 "Prompter's Control Keys +.P +The program +.Pn prompter +queries the user to fill in a message form. When used by +.Pn comp +as: +.DS +comp \-editor prompter +.DE +the resulting behavior is similar to +.Pn mailx . +Appearently, +.Pn prompter +hadn't been touched lately. Otherwise it's hardly explainable why it +still offered the switches +.Sn \-erase \fUchr\fP +and +.Sn \-kill \fUchr\fP +to name the characters for command line editing. +The times when this had been neccessary are long time gone. +Today these things work out-of-the-box, and if not, are configured +with the standard tool +.Pn stty . + .H1 "Draft and Trash Folders .U2 "Draft Folder @@ -389,6 +415,44 @@ .P foo +.H1 "mhshow to show Transition +.P +Since the very beginning, already in the first concept paper, +.Pn show +had been MH's mail display program. +.Pn show +found out which pathnames the relevant messages had and invoked +.Pn mhl +then to let it render the content. +With the advent of MIME, this approach wasn't sufficient anymore. +MIME messages can consist of multiple parts, some of which aren't +directly displayable, and text content can be encoded in +foreign charsets. +.Pn show 's +simple approach and +.Pn mhl 's +limited display facilities couldn't cope with the task any longer. +Instead of extending these tools, new ones were written from scratch +and then added to the MH toolchest. Doing so is encouraged by the +toolchest approach. The new tools could be added without interfearing +with the existing ones. This is great. It allowed MH to be the +first MUA to implement MIME. +.P +The new MIME features were added in form of the single program +.Pn mhn . +The command +.DS +mhn \-show 42 +.DE +would show the MIME message numbered 42. +With the 1.0 release of nmh in February 1999, Richard Coleman finished +the split of +.Pn mhn +into a set of specialized programs, which together covered the +aspects of MIME. One of these resulting tools was +.Pn mhshow . + + .H1 "Blind Carbon Copies .P foo