lynx-dev
[Top][All Lists]
Advanced

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

Re: lynx-dev Re: lynx: can't run without a terminal


From: Klaus Weide
Subject: Re: lynx-dev Re: lynx: can't run without a terminal
Date: Sun, 28 May 2000 22:39:07 -0500 (CDT)

On Fri, 26 May 2000, Klaus Weide wrote:

> On Fri, 26 May 2000, Thomas Dickey wrote:
> 
> > On Fri, May 26, 2000 at 03:19:46PM -0500, Klaus Weide wrote:
> > 
> > > I don't understand why it is where it is (before -term is parsed), or why
> > > the call has to be in LYMain.c at all when that isn't done for ncurses.
> > 
> > he also initializes colors early - makes it a litle awkward to work around.
> > (I investigated the color initialization a month or two ago and found that
> > slang seems to rely on that - haven't looked into the keymap logic 
> > recently).
> 
> Well, failure when -dump combined with dumb/no TERM is new in 2.8.3
> (2.8.2rel.1 seems to work as expected).

2.8.2 for USE_SLANG and USE_KEYMAPS didn't have 
    SLtt_get_terminfo();
in lynx_initialize_keymaps(), but had it later in start_curses().
The reason for the change is given as
    /* The escape sequences may contain embedded termcap strings.  Make
     * sure the library is initialized for that.
in LYStrings.c.  Well this may seem to have fixed the "embedded
termcap strings" (not really - they are based on the wrong TERM if
-term= is used), but certainly broke other things.

> Anyway, the simplest workaround is to disable the code for
> dump_output_immediately, but that doesn't solve everything -
> If lynx is used interactively with -term=someterm, that isn't
> in effect at that point in LYMain.c.  So lynx can fail or use
> the wrong $TERM.

Actually it's worse than that - the -term= command line option is now
completely broken with slang.  (Meaning UNIXish systems, at least).
$TERM gets honored, -term=<some non-dumb type> gets ignored.  Not
completely ignored, it is put in the environnment and seen by child
processes, but that's all - lynx's display doesn't use it, but uses
the original $TERM.

I guess to fix this, the determination of the effective terminal type,
now done in setup() in LYCurses.c, would have to be moved or copied
to before lynx_initialize_keymaps.  OTOH that's too early since we
don't know at that point whether we want dump_output_immediately
(that's also a problem with my "simplest workaround", above - it
won't work...).  AND we haven't parsed -term yet.  So -term as well
ass -dump, -source, -mime_header, (any more?) would have to be added
to those command line options that are handled in the *first* pass.
Brrr.

All this mess because of USE_KEYMAPS.  Which hardly anyone uses or
even knows about.  It should be easy to disable USE_KEYMAPS.
(I mean specifically for slang, here.)

  Klaus


; To UNSUBSCRIBE: Send "unsubscribe lynx-dev" to address@hidden

reply via email to

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