# HG changeset patch # User markus schnalke # Date 1338631222 -7200 # Node ID f80ced4e749bafcca5f7cdcd16a36cfc3ac59315 # Parent 7ca31b06b653a96a3a85a092267da6b665f54999 Wrote more about the show-mhshow merge. diff -r 7ca31b06b653 -r f80ced4e749b ch03.roff --- a/ch03.roff Sat Jun 02 11:58:40 2012 +0200 +++ b/ch03.roff Sat Jun 02 12:00:22 2012 +0200 @@ -271,7 +271,7 @@ .H2 "Merge of \f(CWshow\fP and \f(CWmhshow\fP .P -Since the very beginning, already in the first concept paper, +Since the very beginning \(en already in the first concept paper \(en .Pn show had been MH's message display program. .Pn show @@ -287,7 +287,7 @@ .Pn mhl 's limited display facilities couldn't cope with the task any longer. .P -Instead of extending these tools, new ones were written from scratch +Instead of extending these tools, additional ones were written from scratch and then added to the MH tool chest. Doing so is encouraged by the tool chest approach. The new tools could be added without interfering with the existing ones. This is great. The ease of adding new tools @@ -303,12 +303,82 @@ .Pn mhn into a set of specialized programs, which together covered the multiple aspects of MIME. One of these resulting tools was -.Pn mhshow . -.Pn mhshow -resembled the +.Pn mhshow , +which replaced the .Cl "mhn \-show call. .P +From then on, two message display tools were part of nmh. +Because it should not require user actions to invoke the right tool +whether the message uses MIME or not, +.Pn show +was extended to automatically hand the job over to +.Pn mhshow +if displaying the message would be beyond +.Pn show 's +abilities. +For convenience, +.Pn show +would still display MIME messages if they contained only a single text +part. +In consequence, the user would invoke +.Pn show +(possibly through +.Pn next +or +.Pn prev ) +and get the message printed with either +.Pn show +or +.Pn mhshow , +whatever was more appropriate. +(There was also a switch for +.Pn show +to never invoke +.Pn mhshow .) +.P +Having two similar tools for essentially the same task is redundant. +Both programs needed to be developed syncronously as they were +used as a single tool by the user. Thus they needed to act in a +similar way to not distract the user. +.P +Today, non-MIME messages are rather seen to be a special case of +MIME messages, than MIME messages are seen to be an extension to +original mail. +As +.Pn mhshow +had already be able to display non-MIME messages, it was natural +to drop +.Pn show +in favor of using +.Pn mhshow +exclusively. +.Ci 4c1efdd +This decision follows the idea of orthogonal design. +.P +To allow this replacement, +.Pn mhshow +was reworked to behave more like +.Pn show +first. +Section XXX describes this rework from a different perspective. +Once the tools behaved similar, the replacing became a natural decision. +In mmh, +.Pn show +is the one single message display program again, but it handles +MIME messages as well as non-MIME messages. +There's only one program to maintain and users don't need to deal +with the existance of two display programs. +.P +Though, there's one reason why removing the old +.Pn show +hurts: It had been such a simple program. +Its lean elegance is missing to +.Pn mhshow , +i.e. the new +.Pn show . +But there is no chance, because supporting MIME causes essentially +higher complexity. .H2 "Removal of Configure Options