lynx-dev
[Top][All Lists]
Advanced

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

Re: lynx-dev screen widths


From: Chuck Martin
Subject: Re: lynx-dev screen widths
Date: Sat, 17 Apr 1999 02:17:42 -0400

On Fri, Apr 16, 1999 at 11:39:52AM -0400, Philip Webb wrote:
>  
> the fact that Lynx uses only columns 4 - 73 of the standard 79-col screen
> is hard-coded somewhere in Lynx; it has nothing to do with stty:

Lynx does in fact use all of the columns.  It just indents certain things,
normal text being one of them, so most of a document gets indented three
spaces.

> (2) my (present) editor & the man display both use 79 columns,
> without any change in tty settings.  a lot of users would find it helpful
> if they could use all 79 columns when using Lynx: i am one of them.

I used to be one of them, but I changed my mind once I found out what
lynx is really doing, because those three spaces aren't really wasted.
They actually add information.  Look at src/DefaultStyle.c in the source
tree to see what's happening.  Different content types are indented by
differing amounts of space, and if you familiarize yourself with these,
you can tell at a glance what the amount of indentation means.

For example, H1 headings are centered (presumably because they're normally
used for titles), but H2 through H6 are indented 0, 2, 4, 6, and 8 spaces,
respectively.  A BLOCKQUOTE is indented five spaces.  This makes it very
easy to differentiate headings and subheadings from normal text and
BLOCKQUOTEs, since the headings are indented an even number of spaces,
while the normal text and BLOCKQUOTEs are indented an odd number of spaces.
It also helps you to differentiate the differentiate the different levels
of headings from each other without having to look at the HTML source.

If you really want to remove the indentation from normal text, just edit
src/DefaultStyle.c and find this:

PRIVATE HTStyle HTStyleNormal = {
        0,  "Normal", "P",
        HT_FONT, 1, HT_BLACK,           0, 0,
        3, 3, 6, HT_LEFT,               1, 0,   tabs_8,
        YES, YES, 1, 0,                 0 };

Change the 3's in the fourth line to 0's, and recompile.  This will make
it do what you're asking, but please don't change that in the distribution.
I like it the way it is.

You also suggested (or someone did) making that a configurable option,
but if you look through that file, you'll see that there are *many* of
these structures.  Are we to make them all configurable from lynx.cfg or
the options page?  If not, which ones should be configurable?  I think
it wouldn't make sense to do that.  Three spaces at the beginning of each
line seems to be a small price to pay for the information it provides.
Maybe we should instead consider documenting this behavior so that users
can better understand what they're looking at.

Chuck


reply via email to

[Prev in Thread] Current Thread [Next in Thread]