Summary of changes in Lynx v2.8.2
This list only summarizes some changes, for a detailed history
of changes see the CHANGES file.
- provide international language support using gettext. Lynx
may be built with (or without) either GNU or Solaris
- implement HTML source caching. HTML documents are kept
either in memory or in a temporary file according to lynx.cfg
(you must configure with --enable-source-cache).
- add changes to invoke external editor on textarea, can be
invoked by adding a KEYMAP entry for EDITTEXTAREA area to
- statusline messages are now stored in a cycled buffer and
accessible from the History Page as LYNXMESSAGES:/ link.
- when STARTFILE cannot not be loaded, lynx now exits with
more understandable status messages. All important statusline
messages are now printed to stderr/stdout
- added experimental HTML source syntax highlighting (use
option -prettysrc, you must configure with
- improve performance:
- cache user and group identifiers for the dired
- improve performance of forms-based options menu: reload
previous document when necessary.
- reduce frequency of keyboard interrupt checks since
this is comparatively slow. Use gettimeofday when
available, to implement 0.1 second interval for skipping
interrupt check. Otherwise, limit to no more than once per
- improve HTML interpretation:
- tweak for TABLE formatting: break line at </TR>
end tag (don't wait for next <TR> start tag),
effective in SortaSGML mode only
- formatting tweak in HTML.c for <DD> not preceded
by <DT>: Don't use wrong indentation in that
- prevent generation of empty line between multiple
simple DT elements without intervening DD elements
- modify SGML.c to check for SGML_ELEMENT tag contents,
fixing a case where an entity that appears within a TABLE
but outside of any table row TR will be displayed by Lynx
_without_ its entities being interpreted
- Added support for Euro currency symbol.
- — (—) is displayed as "--"
- new character sets:
- ISO 8859-15, i.e., "Latin 9"
- HP Roman8
- improve interaction with other programs:
- do not report new mail when the mail file's
modification time differs from its access time
- recognize Subject and Message-Id in embedded comments
in HTML documents, in the form generated by MHonArc for
mailing list archives (including lynx-dev). Use these to
generate a default Subject and an In-Reply-To header
(currently not for VMS) when replying by mail (sending a
'C'omment, or following a mailto link) from such a
- use the Message-Id of a news article to generate a
References header when posting a reply.
- improve mailcap support:
- correct precedence of entries within a mailcap
(relative to other entries from the same file) as per RFC
- prevent generation of some unnecessary temp files when
constructing mailcap file test commands
- optimize the test commands specified in the mailcap
file by remembering which tests have been run already.
- improve cookie support:
- domains now match case insensitively
- try to preserve cookies (within a domain) in the same
order in which they were received.
- don't write expired cookies, cookies with no value,
cookies with discard attribute, or cookies without
expiration date to persistent file
- write the cookie file even if we now have no cookies,
if we have previously read cookies from the file.
- make the cookie file readable by only the owner
- ignore comment lines beginning with a '#'
- Rejection or Acceptance of cookies, without prompting,
can be controlled on a per-domain basis by lynx.cfg
options. In addition, rejection of cookies that are invalid
(according to criteria that follow RFC2109 and more recent
drafts, which are sometimes stricter than the widely used
"Preliminary Specification" from Netscape) can now be
controlled by separate lynx.cfg options, on a per-domain
basis; by default, some of these "invalid" cookies can be
accepted after confirmation.
- improve mouse support:
- navigation works to or inside text entry fields
- a context sensitive menu is invoked with the middle
mouse button (ncurses only).
- Double-click-1 on the first and last row are
interpreted as goto start, end or main-window depending on
the location of the click.
- improve experimental color style:
- More complete (and hopefully more consistent) setting
of "normal" attributes, especially background color, on
screen refresh and after statusline messages. Set normal
attributes for statusline prompts.
- Allow mono attribute field in lynx.lss to be a
combination of several attributes separated by '+'
- added experimental command "ADDRLIST", invoked with
- add links to HTML'ized users' guide to lynx.cfg
- add alternative set of line-edit bindings to change the
behavior of the ^B and ^F line editor bindings to provide
emacs/tcsh like behavior (cursor left/right), instead of "word"
- assign LYNXCFG:/ and LYNXCOMPILEOPTS:/ for internal pages
of parsed lynx.cfg and compile-time info.
- use case mapping from ftp.unicode.org /Public/UNIDATA for
case-insensitive user search, rather than UPPER8 assumption
introduced in 2.8 release.
- add support for content encoding for x-bzip2, bzip2 for
- add tab-completion on URL's, by using previously-entered
strings for matching
- modify 123g (and similar movement) commands to allow for
relative links, e.g., by using a '+' or '-' after the 'g'.
- workaround to allow lynx to use the keypad "enter" key as
an alias for carriage return on most terminals
- to OS/390, which uses EBCDIC
- implement experimental setfont translation for OS/2
- modify HTVMS_purge() to rename the remaining file to
version 1 unless a permissions problem was encountered
- change VMS WWW build-script to use prefix=all rather than
prefix=ansi, so that POSIX functions such as 'stat()' are
- make compressed files work with OS/2 EMX and
- fixes for control/C and control/BREAK handling on
As well as security-related changes:
- use safe-sprintf to eliminate most fixed-size buffers (and
associated potential for buffer overflow).
- use new functions for building up command-string for shell
commands, which quote parameters as needed
- prevent spoofing attempts from possible buffer overruns in
forms-based options menu.
- implement restrictions on options that can be set via the
lynx.cfg "include" directive
- derive original directory (used as a download default) from
the process's current working directory rather than environment
And of course, fixes from the initial 2.8.1 release:
- correct DOS/EMX logic in LYEdit.c which incremented
'filename' pointer when its length was greater than 1 rather
than recopying the string, causing a core dump when 'filename'
- correct logic in OpenHiddenFile, which did not check if a
failure to open a file for append was due to the file's not
existing and hence causing IsOurFile to return failure. This
caused the -traversal option to fail.
- check that stdin is really a tty before trying to select
from it in the NSL-FORK logic, allowing users to run lynx -dump
in a cron job.
- A lot of bug fixes
- A lot of documentation changes.
- A lot of dead code removed
Page maintained by Thomas Dickey (firstname.lastname@example.org).
Copyright(c) 1999, Thomas Dickey
Last Updated: 2013-05-19