[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: make mutt the `standard' mail reader

On Sun, Jan 17, 1999 at 06:34:49PM -0800, Steve Lamb wrote:

> On Sun, 17 Jan 1999 20:57:07 -0500, Avery Pennarun wrote:
> >If you use anything else, especially among Unix geeks, you deserve whatever
> >you get.
> Funny, I would have gussed that Unix Geeks would know how to set their
> editors to use spaces in place of tabs and make it universal.  Pardon mee
> for obviously attributing more intelligence and common sense to the
> average unix geek than you do.

Hah, that's nice.  You're telling me that Unix geeks know how to configure
their mail software, at the same time as you're telling me that your
nonstandard tab size is what's messing up your display.

I didn't mean to imply that your display was messed up because you were
using a Windows mailer; that's not the point.  The point is, it's REALLY
hard to make tables that are viewable by everyone's mailer.  Here's what we

  - Old-style standard (mutt, elm, pine, etc): 8-char tabs, monospaced.
  	(nearly everyone on debian-devel uses this format)

  - Windows: unknown tabs (generally at least 8 chars),
  	unknown (proportional) spacing.
  	(nearly everyone on the 'net uses this format)

  - You: 2-char tabs, monospaced.

Now let's try to make a table that fits all three formatting requirements.

1) For only the old-style standard, we can use spaces to separate columns,
   or else use tabs as a replacement for jumping to the next multiple of 8.
   We can even use a combination of the two.
2) We want it to _also_ be viewable by Windows users.  Since their fonts are
   proportional, we can't use spaces to separate columns; tabs aren't great
   either, but since they're generally guaranteed to be 8 spaces apart, you
   can do a good job if your columns are under 8 characters wide.  You can
   start guessing after they get wider.  But most importantly: you need
   tabs, not spaces, so that it looks the same for the old-style formatting

3) Now we add support for your 2-char tab mailer.  Actually, we can't,
   because we can't use spaces for separating columns (doesn't work in
   Windows) and tabs are different sizes between you and everyone else.
You can't just make up your own standards and expect it to work.  Tabs have
been user-settable for a long time, and it's always been a bad idea in
standard text layout systems.

On old typewriters, variable tab was a time-saving feature and very useful. 
Word processors stole it from typewriters, and it's a moderately useful
feature there.  In plain ASCII files with _no_ formatting information
whatsoever, user-definable tabs are the bane of my existence.

The only good fix I've found for tabbing is to treat ASCII TAB (char #9) and
the "tab" concept as different things.  Let ASCII TAB always be 8
characters; that way, it's compatible with printers, xterms, vt100
terminals, etc in their default modes.  When I press the tab key while
programming in xjed, though, I want it to indent my code by only 4 spaces,
because I find that it looks nicer that way.  So, xjed inserts 4 spaces when
I press tab (actually, it autoindents the lines using multiples of 4 spaces,
but you get the idea).  

ASCII text with 8 char tabs is severely flawed, but it's the only friend we
have.  Don't screw with it.

[End of rant]

Whew, I'm glad I got that off my chest.

Have fun,


Reply to: