[Top][All Lists]

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

LYNX-DEV New code for testing

From: Klaus Weide
Subject: LYNX-DEV New code for testing
Date: Tue, 22 Apr 1997 09:18:58 -0500 (CDT)

New code is available at


and even an update to the outdated character style code in


Here is a (biased) selection of some of the more interesting
changes (see the current for more):

* New SGML.c parser, and new HTMLDTD.c with additional element info.
  Extra content information for each tag is now included in the
  HTTag structure, and given in an extended tags_new[] table in
  HTMLDTD.c.  Modified start_element() and end_element() in SGML.c
  to perform some heuristic wind-downs of the parsing stack, based
  on the extra element info. - KW
* Revert treatment of some tags which were treated as SGML_EMPTY
  before to their "natural" content model.  No changes made to
  HTML.c to accomodate this change, so results may differ where
  HTML.c relies on previous hacks or has now handling code for
  end tags of elements which were previously SGML_EMPTY. - KW
* Made SGML parsing switchable between old and new HTMLDTD info
  and SGML.c code, controlled by a New_DTD global variable and
  LYK_SWITCH_DTD toggle key.  Use (temporarily?) ^V for the toggle key.
  This is not yet changable via command line, lynx.cfg, etc., and the
  default is New_DTD==YES (so that it gets tested :-) ). - KW
* Extensive changes to try to keep track of whether a document (or
  a location within it) was reached by an internal (fragment-only)
  URL reference or not.  The basic idea is to be serious about I-D
  (currently) draft-fielding-url-syntax-04.txt.
  URL references starting with '#' are always to the current
  document (from which the reference is made). This leads to a
  lot of hackery in HTML.c, LYMainLoop.c, LYHistory.c, etc. etc...
  to distinguish a doc that was reached by an "internal" reference
  from others.  But it seems necessary to keep track of how the
  reference to a fragment was specified, whether with a non-empty
  "real" URL (possibly relative) preceding the '#' or without it,
  all the way way from the HTML parsing to the mainloop.  Only then
  can the mainloop decide to not start a new retrieval for an internal
  reference without skipping a new retrieval if a full URL reference
  with fragment is made to a location in the same document (which
  may be non-cachable or the result of a POST)...
  This code prevents unnecessary/inappropriate POST form resubmissions
  on following an internal link in a POST response, as they are
  present for example in WebTechs validation results. - KW
* A "Goto numbered link" feature.  The user nterface could be improved...
  Start typing the link number, then add 'g' before hitting enter.
* Some improvements to WHEREIS search.  Will not always position
  found string on first line (details depend on whether anchors are
  present, usually will position in top third of screen), and avoid
  some unnecessary screen updates. - KW

Did I mention that this was more experimental than usual?
Others should *not automatically* assume that this is the best code
to base further development on...


; To UNSUBSCRIBE:  Send a mail message to address@hidden
;                  with "unsubscribe lynx-dev" (without the
;                  quotation marks) on a line by itself.

reply via email to

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