~ From: Evan Kirshenbaum <evan(_at_)hplerk(_dot_)hpl(_dot_)hp(_dot_)com>
~ To: ietf-822(_at_)dimacs(_dot_)rutgers(_dot_)edu
~ Subject: Text/Enhanced straw man
All-
Thinking about simplemail a bit more, I've thrown together a straw man
for such a system that I think is quite workable. I'll call this
"Text/Enhanced" to differentiate it from Bill's simplemail proposal,
although I would hope that we could all agree on a single system that
combines the best of all proposals.
As I read Kirshenbaum's proposal I kept wanting to say "Gee, we need to
keep this simple. The description can't need to be this long." Yet as I
read on each and every proposal seemed just right. I was impressed.
But that didn't keep me silent:
-o As I was reading, I interpreted '*<text with spaces>*' to mean that
the entire text was to be bold. That is, that this was synonymous with
'*text*with*spaces*'. (<I find it hard to type using something other than
spaces between words, anyway.>) Although I was wrong, I think this
suggests a general facility:
- mark less-than text greater-than mark
can be treated as a general marking mechanism for in-line text.
When mark is *, it means bold, when mark is _, it means alternate font.
In all cases, a new paragraph would signal the end of the marking even
if the closing greater-then mark were absent. A new paragraph begins at
a double newline, text at a different indentation, or a literal line.
-o If '*<' means bold, we need something else for footnote. How about
using parentheses in the same mark format. (< So this would be a
footnote.>)
-o For ^<underlining>^ I think the only thing that can reasonably
work is in-line quoting. For this I propose `^< ... >^'. Perhaps additional
marks like | can also be allocated so different underlines can be written.
(<Sigh. '~< ... >~' would be great for a wiggly underline, but tilde is
already used. Would "' " (quote space) at the beginning of a line be
sufficiently unamibguous as an alternative to '~ ` (tilde space)? After
all, quote space will seldom, if ever, otherwise appear. Another great
mark would be underscore (_) for underlining, but usage has already
appropriated that mark for alternate-font.>)
-o I have a problem with the signature block proposal. Unlike all the
other proposals, this one can have a large unintended effect:
> the beginning of the signature should signal that lines to the
> end of the ^<part>^ should be treated as literal lines
Since _part_ is undefined, I take this to mean the end of the message in
most cases. So any line of dashes would literalize the rest of the
message. It seems to me that a signature need be edited only seldom,
so putting a literal line indication on each line is not onerous.
I propose to omit any mention of signatures; sufficient quoting is
possible with other mechanisms.
-o There is one more facility that would help signatures: the ability to
demand fixed width font. Maybe #<...>#.
-o Creating the reference card form below suggested another knotty
problem: tabs. To create the message I switch my UA to typewriter font
and then removed the style when I was done. But now, in this proportional
font, the tabbed text does not line up. It is probably best not to
address this
problem; unpleasant experience has demonstrated that there is _*no*_
good general solution to the tabbing problem.
Fred Hansen
Andrew Consortium
Here in a handy reference card form is the combination of Kirschenbaum's
proposal as modified here:
:: in-line word marking
*...* bold words
_..._ alternate font words
'...' literal text
*<...>* bold text
_<...>_ alternate font text
#<...># fixed width font
(<...>) footnote
^<...>^ underlined text
|<...>| underlined text
:: line markings (at left of line)
:: text start section with text as title
: text unfilled line, but otherwise marked up
~ line literal line
line quotation line (also >>, >>>, ...)
] line quotation line (also ]], ]]], ...)
| line quotation line (also ||, |||, ...)
:: paragraph marking (at beginning of paragraph)
- para indent level (also --, ---, ...)
-o para bulleted indents (also --o. ---o, ...)
-x para bulleted indent (x is arbitrary marks)
Unused characters include: ! @ $ % & + = \ ; " ` , . / ? { } [
PS. We actually implemented in 1984 a user agent that did paragraph
filling in proportional font and interpreted '@i{...}' and '@b{...}'.
The best
reaction was when one of our persistent detractors remarked one day:
"I got a message and your mail reader did everything right."
Unfortunately, I thought he was being sarcastic and had to question
him further to see that the system was satisfactory to him, at least
for that message.