Re: Spaces and Tabs in HTML documents

Tony Sanders (sanders@bsdi.com)
Mon, 14 Jun 1993 23:20:56 -0500


How about having two <PRE> style tags. One works just like existing <PRE>
and another tag that (probably) doesn't use the fixed-width font but does
preserves spaces and tabs as much as possible and allows full HTML mark-up.
It will be the task of the browser to make this look good. This way you
can write freestyle HTML or where needed switch into pseudo-fixed-width
mode (<PFW>? :-). This was we can keep the freestyle input of HTML
which I much prefer, but still allow a back-door for those cases
that require special spacing but don't really need pure fixed-width.
Think of it as three levels of control:
1) spaces mean nothing (default)
2) spaces mean something
3) fully preformatted text, don't mess with it

One other thing I would like to note is that <PRE> tends to imply computer
generated text that you *want* to be in a courier like font. <PFW> would
imply that it's pre-formated at some level (which I'll leave open for
debate) but it's generally not something that wants a courier type font.
Perhaps we need one more level (2.5) that is for fully preformatted text
(just like <PRE>) but that you probably don't want a courier font for it
either. In reality we'll probably have options to PRE, like TYPE="spaces",
TYPE="spaces/indent", with TYPE="preforamtted" being the default.

This isn't a fully developed idea, I just wanted to toss it out for
consideration as an option.

As a side note (just to generate some controversy more interesting
than spaces and tabs).

Let's keep in mind that while pure generalized markup is a good thing,
HTML is ultimately a presentation format. HTML is not, should not, and
can not be the DTD to end all DTD's so if we want to be able to represent
a wide variety of formats in HTML we are going to have to give *some*
level of control to the author in some cases. Emphasis is a good example
of this. HTML simply cannot include semantic tags for every frickin'
thing you can think of. At some point you fall back to something like
italic/bold (or <EM>/<STRONG> or whatever). The <PRE> tag itself
is a major back-door to allow all kinds of author specified layout.

Clearly we want generalized markup as much as possible, but for a
presentation format we need some basics to fall back on or we are just
shooting ourselves in the foot. SGML bigots are missing the big picture,
99.999% of the existing data *doesn't have* semantic information and no
one gives a shaving cream about it; we just want it online and some of us
would like to access it via hypertext. Man pages are a good example of
this (you can hypertext the references to other man pages, but you can't
put semantic tags back where there is only bold and italic text). Also,
since you pretty much have to process already formated man pages the layout
is fixed (this is where <PRE> comes in handy).

--sanders