Tabs in VI

Gary Benson inc at tc.fluke.COM
Fri Jul 15 10:07:17 AEST 1988


mitch at Stride.COM (Thomas Mitchell) writes:

"(Up on the Soap Box)
"In general I hate what most people do with tabs.  On a typewriter
"a tab is a tab stop (this is cool).  In a machine file a tab is
"an ASCII character.  In the context of input it may be simple to
"know what is expected.  Later on output it becomes tough to keep
"a family of programs tracking on this same intent (not cool).
"(Down from the Soap Box)

(OK, MY turn on the Soap Box!)

I hate the way the information processing industry has handled tabs, too!
They call it a TAB after all, in an attempt to emulate what that little
metal tab on a typewriter did -- stop the carriage at the location the tab
was physically inserted. When ASCII came along the need for a similar
capability must have been recognized, but manufacturers of output devices
and software both looked to their own little situation and never thought to
standardize on the meaning of "Number Nine". Instead what you get is one
manufacturer (or software house) deciding to put tabs every eight spaces or
every five spaces or converting them to a single space or something, totally
ignoring the original concept: the user determines where the tabs are to be
at the time the document is created. Sure it makes things more complicated,
because then the software guy has to include the information somehow as the
document is transmitted and the printer manufacturer has to decide how to
read this information from a file and what to do with it on his machine.

Some desktop publishing software seems to be going the right direction by
including a "ruler" as part of the document. To ever get tabs to make sense
with the new technology, we will probably have to standardize the format and
content and intent of the ruler.

Along the same lines, the new information technology seemed to open a can of
worms regarding Carriage Return, too. It is a similar situation: in a
typewriter, there was no such thing as a "line feed". There was INDEX, a
totally separate function from <CR>. I think (although I'm not sure) that it
was IBM who separated <CR> into it's horizontal and vertical components,
creating a lot of confusion over the meaning of <CR>. Do you know that there
are systems out that require TWO codes to return to the left margin, then
generate the new line (<CR><LF>)? How silly. In trying to simplify matters,
ASCII instead left <CR> and <LF> as related but ambiguously defined ideas.

Now in trying to make some sense of things, we wind up with some of the
wierdest things happening. Just now some colleagues and I were trying to
logon to a remote machine that sends only the horizontal postion part of the
command <CR> without <LF>. We tried two different modem programs, neither
one of which gives the option of correcting this behaviour on our end. So
tomorrow, someone will hand-carry a floppy disk. I guess that's pretty
primitive and time-consuming, but it's a whole lot less frustrating and
time-consuming, and a whole lot more productive, than arguing with the guy
over who's software is "right".

(The Soap Box is once again available...)


-- 
Gary Benson		   -_-_-_-_-_-_-_-_-inc at tc.fluke.com_-_-_-_-_-_-_-_-_-_
Publication Services	   Ensign Benson, Space Cadet, Digital Circus, Sector R
John Fluke Mfg. Co. Inc.   _-_-_-_{uw-beaver, sun,microsoft}!fluke!inc-_-_-_-_-



More information about the Comp.unix.questions mailing list