about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--CHANGES91
-rw-r--r--INSTALLATION3
-rw-r--r--LYHelp.hin17
-rw-r--r--LYMessages_en.h26
-rw-r--r--WWW/Library/Implementation/HTAnchor.c108
-rw-r--r--WWW/Library/Implementation/HTFormat.c42
-rw-r--r--WWW/Library/Implementation/HTUtils.h1
-rw-r--r--config.hin1
-rwxr-xr-xconfigure927
-rw-r--r--configure.in46
-rw-r--r--lynx.cfg173
-rw-r--r--lynx_help/Lynx_users_guide.html71
-rw-r--r--lynx_help/help_files.txt53
-rw-r--r--makefile.in74
-rw-r--r--src/GridText.c92
-rw-r--r--src/GridText.h3
-rw-r--r--src/HTAlert.c11
-rw-r--r--src/HTML.c71
-rw-r--r--src/LYCharUtils.c4
-rw-r--r--src/LYCookie.c13
-rw-r--r--src/LYDownload.c32
-rw-r--r--src/LYDownload.h2
-rw-r--r--src/LYGlobalDefs.h16
-rw-r--r--src/LYHistory.c14
-rw-r--r--src/LYHistory.h3
-rw-r--r--src/LYKeymap.c8
-rw-r--r--src/LYKeymap.h2
-rw-r--r--src/LYList.c11
-rw-r--r--src/LYList.h2
-rw-r--r--src/LYLocal.c22
-rw-r--r--src/LYLocal.h3
-rw-r--r--src/LYMainLoop.c83
-rw-r--r--src/LYOptions.c447
-rw-r--r--src/LYOptions.h6
-rw-r--r--src/LYPrint.c33
-rw-r--r--src/LYPrint.h2
-rw-r--r--src/LYShowInfo.c21
-rw-r--r--src/LYUpload.c22
-rw-r--r--src/LYUpload.h2
-rw-r--r--src/LYUtils.c13
-rw-r--r--src/LYrcFile.c19
-rw-r--r--src/chrtrans/README.format4
-rw-r--r--src/chrtrans/cp1250_uni.tbl10
-rw-r--r--src/chrtrans/cp1253_uni.tbl34
-rw-r--r--src/chrtrans/cp1255_uni.tbl46
-rw-r--r--src/chrtrans/cp1256_uni.tbl16
-rw-r--r--src/chrtrans/cp1257_uni.tbl24
-rw-r--r--src/makefile.dos6
-rw-r--r--src/makefile.in5
-rw-r--r--userdefs.h37
50 files changed, 1641 insertions, 1131 deletions
diff --git a/CHANGES b/CHANGES
index 074c1f56..3ecb39ef 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,85 @@
 Changes since Lynx 2.8 release
 ================================================================================
 
+1998-08-29 (2.8.1dev.23)
+* make interim fix for gzip'd html files until we can resolve portability
+  issues raised by SKY's renaming - TD
+* implement LY_SOFT_NEWLINE, to mark places where wrapping is done in
+  HText_appendCharacter, to allow printing to join lines back together
+  (reported by LP) - TD
+* correct missing assignment in change to HText_appendCharacter, fix a core
+  dump - TD
+* removed SKY's change that attempted to skip help-links, since it causes a core
+  dump, e.g., when viewing source - TD
+* use LYCloseTempFP in forms-options code and LYPrint.c where file was opened
+  with LYOpenTemp, to fix a core dump - TD
+* All XYZ_TITLE defines of UIPs (User Interface Page) are collected in
+  LYMessages_en.h for multi language support - SKY
+* Head and H1 of each UIP is standardized; reduced to 1 line.  In this line a
+  context sensitive Help anchor introduced which is skipped by default; i.e.,
+  'd' will directly goto 'Save to Disk' not to the help anchor - SKY
+* Download and Print UIPs are divided into 'Standard' and 'Local additions'.
+  Current and Suggested Filenames are printed on the page which was hidden on
+  the status line or accessed only by '=' - SKY
+* Information page now has links to either development or lynx home pages
+  depending on LYNX_RELEASE define.  Besides compile options can also be
+  accessed on this page:  $helpdir/lynx_site.txt.  A file derived from
+  'config.cache'.  Its corresponding makefile macro is 'install-log' - SKY
+* New Form-based options page is re-organized; logical sections are introduced
+  and sorted alphabetically (except for 'User Mode' - SKY
+* Al's convention of '#<number>' into '#<id name>' in Lynx_users_guide.html is
+  included - SKY
+* All links in the help files are marked, i.e., each
+  'href="../_filename.html_#section"' is converted to
+  'href="../@FILENAME@#section"'.  This is useful if a help filename or
+  link has to be changed through out whole package.
+* 'lynx_help/help_files.txt' is introduced which contains
+  FILENAME=_filename.html_ definitions.  Format and details are given in the
+  file - SKY
+* All help files are renamed from '.html' -> '.html_' - SKY
+* For context sensitive help links in UIPs 'src/LYHelp.h' is created with all
+  the filenames marked like the help files.  It will be included from
+  LYGlobal.h.  In 'src/makefile.in' necessary changes are done to load the
+  filenames from 'lynx_help/help_files.txt' - SKY
+* To be able to compress help files '--enable-gzip-help' option is added in
+  configure script.  In 'makefile' 'install-help:' is updated.
+  If COMPRESS_PROG and COMPRESS_EXT are *both* left empty (default) no
+  compression will be carried.  For the moment compression is restricted only
+  to 'gzip'.  Necessary updates are done in configure.in - SKY
+* documentation fixes for nsl-fork, print screen - PW
+* don't replace '\n' with ' ' if Chinese or Japanese - HN
+* use title information rather than suggested filename as a subject line when
+  printing a page to email - LP
+* add verbose_images to old-style options menu, and the .lynxrc - LE
+* add verbose_images and useragent to forms-based options menu - LP
+* disable download of "mailto:" links (reported by SKY (Sinan Kaan Yerli)
+  <sky@star.cpes.susx.ac.uk> ) - LP
+* Change HTUserMsg to HTInfoMsg for "ALREADY_AT_BEGIN" and "ALREADY_AT_END"
+  messages to make it less annoying - LP
+* reduce clutter in mainloop by inserting LYpop() in postoptions() - LP
+* makefile.dos: split long lines - LP
+* Fix bug with TAIPEI big5 charset in src/LYCharUtils.c
+  (this typo also found in lynx2.7.2: "big-5" instead of "big5"),
+  patch by Shou-Chuan Lai <chuan@cs.nthu.edu.tw> - LP
+* Add -debug_partial command line switch so we got MessageSecs dely
+  between incremental rendering stages if partial display mode is ON.
+  (MessageSecs available from lynx.cfg and set to 2 sec by default).
+  The problem in incremental rendering of forms input was reported by SKY
+  (Sinan Kaan Yerli) <sky@star.cpes.susx.ac.uk> ), still not fixed
+  but now we may enter form-based options menu in -debug_partial mode
+  and rerender the page with Cntrl-R to see what is happening in fact. - LP
+* Serious bug fixed for DISP_PARTIAL: two asynchronous processes synchronized.
+  HTDisplayPartial() synchronized by flag against HText_new() which create
+  the new HTMainText object. Otherwise HTDisplayPartial() sometimes was
+  matching old HTMainText (with its own line counter) and repaint previous doc,
+  not a new one. TRACE log now got a message from HText_pageDisplay - LP
+* fixed last chartrans changes, lines such as
+      #0x99    #NOTDEFINED
+  should not be commented with leading comment symbol because they are ignored
+  by makeuctbl in fact - LP
+* modify DH's patch for COLLAPSE_BR_TAGS to only modify the nonstandard case,
+  thereby making that more restrictive, and restoring standard behavior
+  (reported by HN) - TD
 1998-08-21 (2.8.1dev.22)
 * correct test for -std1 compiler option on Digital Unix (reported by Michael
   Warner) - TD
@@ -10,10 +89,10 @@ Changes since Lynx 2.8 release
   newlines in the block (David Henderson <davidh@psiphi.org>)
 * clarification in userdefs.h - HN
 * MS Windows codepages updated for EURO SIGN (0x20AC), from ftp.unicode.org - LP
-* minor fix for DISP_PARTIAL, solves problem of interfering with previously
-  displayed document - LP
+* minor fix for DISP_PARTIAL, disable scrolling when HTTP request already sent
+  but the new document not displayed on the screen yet - LP
 * ifdef DOS/WINDOWS to open lynx.trace in text mode - LP
-* rearrange text in lynx.cfg concerning character_set - LP 
+* rearrange text in lynx.cfg concerning character_set - LP
 * correct miscellaneous typos - LP
 * Fixed:  Verbose images now work with [IMAGE]-Submit.  Also, fixed the core
   dump when clickable_images is on.  The problem was an oversight in
@@ -30,14 +109,14 @@ Changes since Lynx 2.8 release
 * added blurb in lynx.cfg about COOKIE_{ACCEPT,REJECT}_DOMAINS - BJP
 * -accept_all_cookies on the commandline works as a toggle now (against
   lynx.cfg value -- NOT against .lynxrc value) - BJP
-* change HtAlert for bad partial reference to an HtUserMsg to make it less
+* change HTAlert for bad partial reference to an HTUserMsg to make it less
   annoying (request by Philip Webb, Jason McBrayer)
 1998-08-15 (2.8.1dev.21)
 * correct pathname for help file in forms-options screen - TD
 * reduce clutter in LYOptions.c with SELECTED, DISABLED, NOTEMPTY macros,
   PutOptValues, GetOptValues functions - TD
-* modified LYOptions options to include MBM support from form-based options, by
-  making a link href="LYNXOPTIONS://MBM_MENU" like it was in LYPrint.c and
+* modified LYOptions to include MBM support from form-based options,
+  by making a link href="LYNXOPTIONS://MBM_MENU" like it was in LYPrint.c and
   calling edit_bookmarks() from postoptions() - LP
 * add/use HTUserMsg to encapsulate most of the important messages - TD
 * add/use HTInfoMsg to encapsulate most of the informational messages - TD
diff --git a/INSTALLATION b/INSTALLATION
index aed8ed23..bc23c434 100644
--- a/INSTALLATION
+++ b/INSTALLATION
@@ -263,7 +263,8 @@ II. Compile instructions -- UNIX
 	a http daemon.
 
   --enable-nsl-fork			(define NSL_FORK)
-	Use this option to allow NSL requests to be aborted at will.
+	Disabled by default, this allows interruption of NSL requests,
+	so that `z' will stop the `look-up' phase of a connection.
 
   --enable-persistent-cookies		(define EXP_PERSISTENT_COOKIES)
 	Use this option to compile-in support for saving cookies to a file,
diff --git a/LYHelp.hin b/LYHelp.hin
new file mode 100644
index 00000000..dc798611
--- /dev/null
+++ b/LYHelp.hin
@@ -0,0 +1,17 @@
+/* definitions for help files */
+
+#ifndef LYHELP_H
+#define LYHELP_H
+
+#define COOKIE_JAR_HELP		"@LYNX_USERS_GUIDE@#Cookies"
+#define CURRENT_KEYMAP_HELP	"keystrokes/@KEYSTROKE_HELP@"
+#define DIRED_MENU_HELP		"keystrokes/@DIRED_HELP@"
+#define DOWNLOAD_OPTIONS_HELP	"@LYNX_USERS_GUIDE@#RemoteSource"
+#define HISTORY_PAGE_HELP	"keystrokes/@HISTORY_HELP@"
+#define LIST_PAGE_HELP		"keystrokes/@FOLLOW_HELP@"
+#define OPTIONS_HELP		"keystrokes/@OPTION_HELP@"
+#define PRINT_OPTIONS_HELP	"keystrokes/@PRINT_HELP@"
+#define UPLOAD_OPTIONS_HELP	"@LYNX_USERS_GUIDE@#DirEd"
+#define VISITED_LINKS_HELP	"keystrokes/@VISITED_HELP@"
+
+#endif /* LYHELP_H */
diff --git a/LYMessages_en.h b/LYMessages_en.h
index 7b16dd5f..65b5eddb 100644
--- a/LYMessages_en.h
+++ b/LYMessages_en.h
@@ -8,7 +8,7 @@
 #define LYMESSAGES_EN_H
 
 /*******************************************************************
- * The following definitions are for statusline prompts, messages,
+ * The following definitions are for status line prompts, messages,
  * or warnings issued by Lynx during program execution.  You can
  * modify them to make them more appropriate for you site, and/or
  * to use other languages.  Links to collections of alternate
@@ -41,6 +41,8 @@
 #define MOREHELP \
  "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
 #define MORE "-- press space for next page --"
+
+/* Forms messages */
 #define FORM_LINK_TEXT_MESSAGE \
  "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
 #define FORM_LINK_TEXT_UNM_MSG \
@@ -89,6 +91,7 @@
  "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
 #define CHOICE_LIST_UNM_MSG \
  "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+
 #define NORMAL_LINK_MESSAGE \
  "(NORMAL LINK)   Use right-arrow or <return> to activate."
 #define LINK_NOT_FOUND "The resource requested is not available at this time."
@@ -166,8 +169,9 @@
 #endif /* VMS */
 #define SPAWNING_DISABLED "Spawning is currently disabled."
 #define DOWNLOAD_DISABLED "The 'd'ownload command is currently disabled."
-#define NO_DOWNLOAD_INPUT "You cannot download a input field."
+#define NO_DOWNLOAD_INPUT "You cannot download an input field."
 #define NO_DOWNLOAD_MAILTO_ACTION "Form has a mailto action!  Cannot download."
+#define NO_DOWNLOAD_MAILTO_LINK "You cannot download a mailto: link."
 #define NO_DOWNLOAD_COOKIES "You cannot download cookies."
 #define NO_DOWNLOAD_PRINT_OP "You cannot download a printing option."
 #define NO_DOWNLOAD_UPLOAD_OP "You cannot download an upload option."
@@ -595,6 +599,8 @@
  "\n When you are done, press enter and put a single period (.)"
 #define ENTER_PERIOD_WHEN_DONE_B \
  "\n on a line and press enter again."
+
+/* Cookies messages */
 #define ADVANCED_COOKIE_CONFIRMATION \
  "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
 #define INVALID_COOKIE_DOMAIN_CONFIRMATION \
@@ -602,8 +608,6 @@
 #define ALLOWING_COOKIE "Allowing this cookie."
 #define REJECTING_COOKIE "Rejecting this cookie."
 #define COOKIE_JAR_IS_EMPTY "The Cookie Jar is empty."
-#define COOKIE_JAR_TITLE "Lynx Cookie Jar"
-#define REACHED_COOKIE_JAR_PAGE "You have reached the Lynx Cookie Jar Page"
 #define ACTIVATE_TO_GOBBLE \
  "Activate links to gobble up cookies or entire domains,"
 #define OR_CHANGE_ALLOW "or to change a domain's 'allow' setting."
@@ -628,6 +632,7 @@
 #define PROMPTING_TO_ALLOW_COOKIES "'P'rompting to allow from domain '%s'."
 #define DELETE_ALL_COOKIES_IN_DOMAIN "Delete all cookies in this domain?"
 #define ALL_COOKIES_EATEN "All of the cookies in the jar have been eaten!"
+
 #define PORT_NINETEEN_INVALID "Port 19 not permitted in URLs."
 #define PORT_TWENTYFIVE_INVALID "Port 25 not permitted in URLs."
 #define PORT_INVALID "Port %lu not permitted in URLs."
@@ -644,6 +649,19 @@
 #define FORM_TAIL_COMBINED_WITH_HEAD \
  "Modified tail combined with head of form field value."
 
+/* Lynx internal page titles */
+#define COOKIE_JAR_TITLE	"Lynx Cookie Jar"
+#define CURRENT_KEYMAP_TITLE	"Current Key Map"
+#define DIRED_MENU_TITLE	"File Management Options"
+#define PERMIT_OPTIONS_TITLE	"File Permission Options"
+#define DOWNLOAD_OPTIONS_TITLE	"Lynx Download Options"
+#define HISTORY_PAGE_TITLE	"Lynx History Page"
+#define LIST_PAGE_TITLE		"Lynx List Page"
+#define OPTIONS_TITLE		"Lynx Options Page"
+#define PRINT_OPTIONS_TITLE	"Lynx Printing Options"
+#define UPLOAD_OPTIONS_TITLE	"Lynx Upload Options"
+#define VISITED_LINKS_TITLE	"Lynx Visited Links Page"
+
 #ifdef DIRED_SUPPORT
 #define DIRED_NOVICELINE \
  "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
diff --git a/WWW/Library/Implementation/HTAnchor.c b/WWW/Library/Implementation/HTAnchor.c
index ef76ee1b..59b4cd50 100644
--- a/WWW/Library/Implementation/HTAnchor.c
+++ b/WWW/Library/Implementation/HTAnchor.c
@@ -45,7 +45,7 @@ PRIVATE int HASH_FUNCTION ARGS1(
     for (p = (CONST unsigned char *)cp_address, hash = 0; *p; p++)
 	hash = (int) (hash * 3 + (*(CONST unsigned char *)p)) % HASH_SIZE;
 
-    return hash;
+    return(hash);
 }
 
 typedef struct _HyperDoc Hyperdoc;
@@ -90,7 +90,7 @@ PRIVATE HTParentAnchor * HTParentAnchor_new NOARGS
     newAnchor->expires = NULL;		/* Expires. - FM */
     newAnchor->last_modified = NULL;	/* Last-Modified. - FM */
     newAnchor->server = NULL;		/* Server. - FM */
-    return newAnchor;
+    return(newAnchor);
 }
 
 PRIVATE HTChildAnchor * HTChildAnchor_new NOARGS
@@ -116,12 +116,12 @@ PRIVATE BOOL HTEquivalent ARGS2(
     if (s && t) {  /* Make sure they point to something */
 	for (; *s && *t; s++, t++) {
 	    if (TOUPPER(*s) != TOUPPER(*t)) {
-		return NO;
+		return(NO);
 	    }
 	}
-	return TOUPPER(*s) == TOUPPER(*t);
+	return( TOUPPER(*s) == TOUPPER(*t));
     } else {
-	return s == t;	/* Two NULLs are equivalent, aren't they ? */
+	return(s == t); 	/* Two NULLs are equivalent, aren't they ? */
     }
 }
 
@@ -143,12 +143,12 @@ PRIVATE BOOL HTIdentical ARGS2(
     if (s && t) {  /* Make sure they point to something */
 	for (; *s && *t; s++, t++) {
 	    if (*s != *t) {
-		return NO;
+		return(NO);
 	    }
 	}
-	return *s == *t;
+	return(*s == *t);
     } else {
-	return s == t;	/* Two NULLs are identical, aren't they ? */
+	return(s == t); 	/* Two NULLs are identical, aren't they ? */
     }
 }
 #endif /* CASE_INSENSITIVE_ANCHORS */
@@ -169,7 +169,7 @@ PUBLIC HTChildAnchor * HTAnchor_findChild ARGS2(
 
     if (!parent) {
 	CTRACE(tfp, "HTAnchor_findChild called with NULL parent.\n");
-	return NULL;
+	return(NULL);
     }
     if ((kids = parent->children) != 0) {
 	/*
@@ -185,7 +185,7 @@ PUBLIC HTChildAnchor * HTAnchor_findChild ARGS2(
 		{
 		    CTRACE(tfp, "Child anchor %p of parent %p with name `%s' already exists.\n",
 				(void *)child, (void *)parent, tag);
-		    return child;
+		    return(child);
 		}
 	    }
 	}  /*  end if tag is void */
@@ -201,7 +201,7 @@ PUBLIC HTChildAnchor * HTAnchor_findChild ARGS2(
     HTList_addObject (parent->children, child);
     child->parent = parent;
     StrAllocCopy(child->tag, tag);
-    return child;
+    return(child);
 }
 
 
@@ -249,7 +249,7 @@ PUBLIC HTChildAnchor * HTAnchor_findChildAndLink ARGS4(
 	FREE(parsed_doc.address);
 	FREE(relative_to);
     }
-    return child;
+    return(child);
 }
 
 /*
@@ -717,7 +717,7 @@ PUBLIC void HTAnchor_makeLastChild ARGS1(
 PUBLIC HTParentAnchor * HTAnchor_parent ARGS1(
 	HTAnchor *,	me)
 {
-    return me ? me->parent : NULL;
+    return( me ? me->parent : NULL);
 }
 
 PUBLIC void HTAnchor_setDocument ARGS2(
@@ -731,7 +731,7 @@ PUBLIC void HTAnchor_setDocument ARGS2(
 PUBLIC HyperDoc * HTAnchor_document ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me ? me->document : NULL;
+    return( me ? me->document : NULL);
 }
 
 
@@ -764,7 +764,7 @@ PUBLIC char * HTAnchor_address ARGS1(
 			   me->parent->address, ((HTChildAnchor *)me)->tag);
 	}
     }
-    return addr;
+    return(addr);
 }
 
 PUBLIC void HTAnchor_setFormat ARGS2(
@@ -778,7 +778,7 @@ PUBLIC void HTAnchor_setFormat ARGS2(
 PUBLIC HTFormat HTAnchor_format ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me ? me->format : NULL;
+    return( me ? me->format : NULL);
 }
 
 PUBLIC void HTAnchor_setIndex ARGS2(
@@ -803,7 +803,7 @@ PUBLIC void HTAnchor_setPrompt ARGS2(
 PUBLIC BOOL HTAnchor_isIndex ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me ? me->isIndex : NO;
+    return( me ? me->isIndex : NO);
 }
 
 /*	Whether Anchor has been designated as an ISMAP link
@@ -812,13 +812,13 @@ PUBLIC BOOL HTAnchor_isIndex ARGS1(
 PUBLIC BOOL HTAnchor_isISMAPScript ARGS1(
 	HTAnchor *,	me)
 {
-    return me ? me->parent->isISMAPScript : NO;
+    return( me ? me->parent->isISMAPScript : NO);
 }
 
 PUBLIC BOOL HTAnchor_hasChildren ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me ? ! HTList_isEmpty(me->children) : NO;
+    return( me ? ! HTList_isEmpty(me->children) : NO);
 }
 
 #if defined(USE_HASH)
@@ -827,7 +827,7 @@ PUBLIC BOOL HTAnchor_hasChildren ARGS1(
 PUBLIC CONST char * HTAnchor_style ARGS1(
 	HTParentAnchor *,	me)
 {
-	return me ? me->style : NULL;
+	return( me ? me->style : NULL);
 }
 
 PUBLIC void HTAnchor_setStyle ARGS2(
@@ -846,7 +846,7 @@ PUBLIC void HTAnchor_setStyle ARGS2(
 PUBLIC CONST char * HTAnchor_title ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me ? me->title : NULL;
+    return( me ? me->title : NULL);
 }
 
 PUBLIC void HTAnchor_setTitle ARGS2(
@@ -888,7 +888,7 @@ PUBLIC void HTAnchor_appendTitle ARGS2(
 PUBLIC CONST char * HTAnchor_bookmark ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me ? me->bookmark : NULL;
+    return( me ? me->bookmark : NULL);
 }
 
 PUBLIC void HTAnchor_setBookmark ARGS2(
@@ -904,7 +904,7 @@ PUBLIC void HTAnchor_setBookmark ARGS2(
 PUBLIC CONST char * HTAnchor_owner ARGS1(
 	HTParentAnchor *,	me)
 {
-    return (me ? me->owner : NULL);
+    return( me ? me->owner : NULL);
 }
 
 PUBLIC void HTAnchor_setOwner ARGS2(
@@ -921,7 +921,7 @@ PUBLIC void HTAnchor_setOwner ARGS2(
 PUBLIC CONST char * HTAnchor_RevTitle ARGS1(
 	HTParentAnchor *,	me)
 {
-    return (me ? me->RevTitle : NULL);
+    return( me ? me->RevTitle : NULL);
 }
 
 PUBLIC void HTAnchor_setRevTitle ARGS2(
@@ -948,7 +948,7 @@ PUBLIC void HTAnchor_setRevTitle ARGS2(
 PUBLIC CONST char * HTAnchor_SugFname ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me ? me->SugFname : NULL;
+    return( me ? me->SugFname : NULL);
 }
 
 /*	Content-Encoding handling. - FM
@@ -958,7 +958,7 @@ PUBLIC CONST char * HTAnchor_SugFname ARGS1(
 PUBLIC CONST char * HTAnchor_content_encoding ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me ? me->content_encoding : NULL;
+    return( me ? me->content_encoding : NULL);
 }
 
 /*	Content-Type handling. - FM
@@ -966,7 +966,7 @@ PUBLIC CONST char * HTAnchor_content_encoding ARGS1(
 PUBLIC CONST char * HTAnchor_content_type ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me ? me->content_type : NULL;
+    return( me ? me->content_type : NULL);
 }
 
 /*	Last-Modified header handling. - FM
@@ -974,7 +974,7 @@ PUBLIC CONST char * HTAnchor_content_type ARGS1(
 PUBLIC CONST char * HTAnchor_last_modified ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me ? me->last_modified : NULL;
+    return( me ? me->last_modified : NULL);
 }
 
 /*	Date header handling. - FM
@@ -982,7 +982,7 @@ PUBLIC CONST char * HTAnchor_last_modified ARGS1(
 PUBLIC CONST char * HTAnchor_date ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me ? me->date : NULL;
+    return( me ? me->date : NULL);
 }
 
 /*	Server header handling. - FM
@@ -990,7 +990,7 @@ PUBLIC CONST char * HTAnchor_date ARGS1(
 PUBLIC CONST char * HTAnchor_server ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me ? me->server : NULL;
+    return( me ? me->server : NULL);
 }
 
 /*	Safe header handling. - FM
@@ -998,7 +998,7 @@ PUBLIC CONST char * HTAnchor_server ARGS1(
 PUBLIC BOOL HTAnchor_safe ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me ? me->safe : FALSE;
+    return( me ? me->safe : FALSE);
 }
 
 /*	Content-Base header handling. - FM
@@ -1006,7 +1006,7 @@ PUBLIC BOOL HTAnchor_safe ARGS1(
 PUBLIC CONST char * HTAnchor_content_base ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me ? me->content_base : NULL;
+    return( me ? me->content_base : NULL);
 }
 
 /*	Content-Location header handling. - FM
@@ -1014,7 +1014,7 @@ PUBLIC CONST char * HTAnchor_content_base ARGS1(
 PUBLIC CONST char * HTAnchor_content_location ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me ? me->content_location : NULL;
+    return( me ? me->content_location : NULL);
 }
 
 /*	Link me Anchor to another given one
@@ -1026,7 +1026,7 @@ PUBLIC BOOL HTAnchor_link ARGS3(
 	HTLinkType *,	type)
 {
     if (!(source && destination))
-	return NO;  /* Can't link to/from non-existing anchor */
+	return(NO);  /* Can't link to/from non-existing anchor */
     CTRACE(tfp, "Linking anchor %p to anchor %p\n", source, destination);
     if (!source->mainLink.dest) {
 	source->mainLink.dest = destination;
@@ -1044,7 +1044,7 @@ PUBLIC BOOL HTAnchor_link ARGS3(
     if (!destination->parent->sources)
 	destination->parent->sources = HTList_new();
     HTList_addObject (destination->parent->sources, source);
-    return YES;  /* Success */
+    return(YES);  /* Success */
 }
 
 
@@ -1054,7 +1054,7 @@ PUBLIC BOOL HTAnchor_link ARGS3(
 PUBLIC HTAnchor * HTAnchor_followMainLink ARGS1(
 	HTAnchor *,	me)
 {
-    return me->mainLink.dest;
+    return( me->mainLink.dest);
 }
 
 PUBLIC HTAnchor * HTAnchor_followTypedLink ARGS2(
@@ -1062,17 +1062,17 @@ PUBLIC HTAnchor * HTAnchor_followTypedLink ARGS2(
 	HTLinkType *,	type)
 {
     if (me->mainLink.type == type)
-	return me->mainLink.dest;
+	return( me->mainLink.dest);
     if (me->links) {
 	HTList *links = me->links;
 	HTLink *the_link;
 	while (NULL != (the_link=(HTLink *)HTList_nextObject(links))) {
 	    if (the_link->type == type) {
-		return the_link->dest;
+		return( the_link->dest);
 	    }
 	}
     }
-    return NULL;  /* No link of me type */
+    return(NULL);  /* No link of me type */
 }
 
 
@@ -1084,7 +1084,7 @@ PUBLIC BOOL HTAnchor_makeMainLink ARGS2(
 {
     /* Check that everything's OK */
     if (!(me && HTList_removeObject (me->links, movingLink))) {
-	return NO;  /* link not found or NULL anchor */
+	return(NO);  /* link not found or NULL anchor */
     } else {
 	/* First push current main link onto top of links list */
 	HTLink *newLink = (HTLink *)calloc (1, sizeof (HTLink));
@@ -1098,7 +1098,7 @@ PUBLIC BOOL HTAnchor_makeMainLink ARGS2(
 	memcpy((void *)&me->mainLink,
 	       (CONST void *)movingLink, sizeof (HTLink));
 	FREE(movingLink);
-	return YES;
+	return(YES);
     }
 }
 
@@ -1112,7 +1112,7 @@ PUBLIC HTList * HTAnchor_methods ARGS1(
     if (!me->methods) {
 	me->methods = HTList_new();
     }
-    return me->methods;
+    return( me->methods);
 }
 
 /*	Protocol
@@ -1121,7 +1121,7 @@ PUBLIC HTList * HTAnchor_methods ARGS1(
 PUBLIC void * HTAnchor_protocol ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me->protocol;
+    return( me->protocol);
 }
 
 PUBLIC void HTAnchor_setProtocol ARGS2(
@@ -1137,7 +1137,7 @@ PUBLIC void HTAnchor_setProtocol ARGS2(
 PUBLIC char * HTAnchor_physical ARGS1(
 	HTParentAnchor *,	me)
 {
-    return me->physical;
+    return( me->physical);
 }
 
 PUBLIC void HTAnchor_setPhysical ARGS2(
@@ -1209,9 +1209,9 @@ PUBLIC LYUCcharset * HTAnchor_getUCInfoStage ARGS2(
 	me->UCStages = stages;
     }
     if (me) {
-	return &me->UCStages->s[which_stage].C;
+	return( &me->UCStages->s[which_stage].C);
     }
-    return NULL;
+    return(NULL);
 }
 
 PUBLIC int HTAnchor_getUCLYhndl ARGS2(
@@ -1226,10 +1226,10 @@ PUBLIC int HTAnchor_getUCLYhndl ARGS2(
 	    (void) HTAnchor_getUCInfoStage(me, which_stage);
 	}
 	if (me->UCStages->s[which_stage].lock > UCT_SETBY_NONE) {
-	    return me->UCStages->s[which_stage].LYhndl;
+	    return( me->UCStages->s[which_stage].LYhndl);
 	}
     }
-    return -1;
+    return( -1);
 }
 
 PUBLIC LYUCcharset * HTAnchor_setUCInfoStage ARGS4(
@@ -1255,10 +1255,10 @@ PUBLIC LYUCcharset * HTAnchor_setUCInfoStage ARGS4(
 	    else {
 		p->UChndl = -1;
 	    }
-	    return p;
+	    return(p);
 	}
     }
-    return NULL;
+    return(NULL);
 }
 
 PUBLIC LYUCcharset * HTAnchor_resetUCInfoStage ARGS4(
@@ -1268,10 +1268,10 @@ PUBLIC LYUCcharset * HTAnchor_resetUCInfoStage ARGS4(
 	int,			set_by)
 {
     if (!me || !me->UCStages)
-	return NULL;
+	return(NULL);
     me->UCStages->s[which_stage].lock = set_by;
     me->UCStages->s[which_stage].LYhndl = LYhndl;
-    return &me->UCStages->s[which_stage].C;
+    return( &me->UCStages->s[which_stage].C);
 }
 
 /*
@@ -1302,8 +1302,8 @@ PUBLIC LYUCcharset * HTAnchor_copyUCInfoStage ARGS4(
 		me->UCStages->s[from_stage].LYhndl;
 	    if (p_to != p_from)
 		memcpy(p_to, p_from, sizeof(LYUCcharset));
-	    return p_to;
+	    return(p_to);
 	}
     }
-    return NULL;
+    return(NULL);
 }
diff --git a/WWW/Library/Implementation/HTFormat.c b/WWW/Library/Implementation/HTFormat.c
index 58afc4b8..e1c9a851 100644
--- a/WWW/Library/Implementation/HTFormat.c
+++ b/WWW/Library/Implementation/HTFormat.c
@@ -260,7 +260,7 @@ PRIVATE int half_match ARGS2(char *,trial_type, char *,target)
 	return 0;
 
     CTRACE(tfp, "HTFormat: comparing %s and %s for half match\n",
-	        trial_type, target);
+		trial_type, target);
 
 	/* main type matches */
     if (!strncmp(trial_type, target, (cp-trial_type)-1))
@@ -486,26 +486,30 @@ PRIVATE void HTDisplayPartial NOARGS
 	**  HText_getNumOfLines() = "current" number of lines received
 	**  NumOfLines_partial = number of lines at the moment of last repaint.
 	**
-	**  Update NumOfLines_partial only if we repaint the display,
-	**  so it corresponds to real number of displayed lines.
-	**  Repaint the page only when necessary:
+	**  We update NumOfLines_partial only when we repaint the display.
+	**  -1 is the special value:
+	**  This is a synchronization flag switched to 0 when HText_new()
+	**  starts a new HTMainText object - all hypertext functions use it,
+	**  lines counter in particular [we call it from HText_getNumOfLines()].
+	**
+	**  Otherwise HTMainText holds info from the previous document
+	**  and we may repaint it instead of the new one:
+	**  prev doc scrolled to the first line (=Newline_partial)
+	**  is not good looking :-)       23 Aug 1998 Leonid Pauzner
+	**
+	**  So repaint the page only when necessary:
 	*/
-	if ((Newline_partial + display_lines) > NumOfLines_partial) {
+	if ((NumOfLines_partial != -1)
+		/* new hypertext document available  */
+	&& ((Newline_partial + display_lines) > NumOfLines_partial)
 		/* current page not complete... */
-	if ((Newline_partial + 2)  < HText_getNumOfLines()) {
+	&& ((Newline_partial + 2)  < HText_getNumOfLines())) {
 		/* and we MAY display at least a couple of lines on the top.
-		**
-		** Note: we check the lines in _rendered_ document
-		** and real HTML source may have several Kb of headers,
-		** Javascript applets etc., which are not visible in lynx
-		** and we got a delay (correct).
-		** We should NOT try to repaint at that early stage
-		** to avoid interfere with previously displayed document. - LP
-		*/
+		 *
+		 */
 	    NumOfLines_partial = HText_getNumOfLines();
 	    HText_pageDisplay(Newline_partial, "");
 	}
-	}
     }
 }
 #else
@@ -518,7 +522,7 @@ PRIVATE void HTDisplayPartial NOARGS
 **   This routine is responsible for creating and PRESENTING any
 **   graphic (or other) objects described by the file.
 **
-**   The file number given is assumed to be a TELNET stream ie containing
+**   The file number given is assumed to be a TELNET stream, i.e., containing
 **   CRLF at the end of lines which need to be stripped to LF for unix
 **   when the format is textual.
 **
@@ -579,7 +583,7 @@ PUBLIC int HTCopy ARGS4(
 		       SOCKET_ERRNO == ECONNRESET ||
 		       SOCKET_ERRNO == EPIPE) {
 		/*
-		 *  Arrrrgh, HTTP 0/1 compability problem, maybe.
+		 *  Arrrrgh, HTTP 0/1 compatibility problem, maybe.
 		 */
 		if (bytes <= 0) {
 		    /*
@@ -613,7 +617,7 @@ PUBLIC int HTCopy ARGS4(
 
 	(*targetClass.put_block)(sink, input_buffer, status);
 	bytes += status;
-        HTReadProgress(bytes, anchor ? anchor->content_length : 0);
+	HTReadProgress(bytes, anchor ? anchor->content_length : 0);
 	HTDisplayPartial();
 
     } /* next bufferload */
@@ -707,7 +711,7 @@ PRIVATE int HTGzFileCopy ARGS2(
     */
     targetClass = *(sink->isa); /* Copy pointers to procedures */
 
-    /*	read and inflate gzipped file, and push binary down sink
+    /*	read and inflate gzip'd file, and push binary down sink
     */
     HTReadProgress(bytes = 0, 0);
     for (;;) {
diff --git a/WWW/Library/Implementation/HTUtils.h b/WWW/Library/Implementation/HTUtils.h
index e6917daa..100dd390 100644
--- a/WWW/Library/Implementation/HTUtils.h
+++ b/WWW/Library/Implementation/HTUtils.h
@@ -373,6 +373,7 @@ The local equivalents of CR and LF
 #define CTRACE if(TRACE)fprintf
 #define tfp TraceFP()
 #define CTRACE_SLEEP(secs) if (TRACE && LYTraceLogFP == 0) sleep(secs)
+#define CTRACE_FLUSH(fp) if(TRACE) fflush(fp)
 
 extern FILE *TraceFP NOPARAMS;
 
diff --git a/config.hin b/config.hin
index 4a019b61..fdcbb5d9 100644
--- a/config.hin
+++ b/config.hin
@@ -68,6 +68,7 @@
 #undef LONG_LIST		/* CF_ARG_DISABLE(long-list) */
 #undef LYNXCGI_LINKS		/* CF_ARG_ENABLE(cgi-links) */
 #undef LYNX_CFG_FILE		/* $libdir/lynx.cfg */
+#undef LYNX_COMPILE_OPTS	/* $libdir/lynx_help/lynx_site.txt */
 #undef LYNX_LSS_FILE		/* $libdir/lynx.lss */
 #undef LY_FIND_LEAKS		/* configure --disable-leaks */
 #undef MKDIR_PATH		/* CF_PATH_PROG(mkdir) */
diff --git a/configure b/configure
index bd49c515..2a840018 100755
--- a/configure
+++ b/configure
@@ -213,6 +213,7 @@ cat <<EOF
   --enable-underlines     underline links rather than using boldface (default: off)
 EOF
 cat <<EOF
+  --enable-gzip-help      install gzip'ed help files (default: off)
   --with-zlib             use zlib for decompression of some gzip files
 Directory Editor Options:
   --disable-dired          enable optional directory-editor, DirEd (default: on)
@@ -224,9 +225,9 @@ Directory Editor Options:
   --disable-dired-uudecode disable "uudecode" command (default: on)
   --disable-dired-zip     disable "zip", "unzip"  commands (default: on)
   --disable-dired-gzip    disable "gzip", "gunzip" commands (default: on)
-  --disable-long-list     disable long "ls -l" directory listings (default: on)
 EOF
 cat <<EOF
+  --disable-long-list     disable long "ls -l" directory listings (default: on)
   --disable-parent-dir-refs
                           disable "Up-to" links in directory listings (default: on)
 EOF
@@ -594,7 +595,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
 fi
 
 echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:598: checking host system type" >&5
+echo "configure:599: checking host system type" >&5
 
 host_alias=$host
 case "$host_alias" in
@@ -619,7 +620,7 @@ echo "$ac_t""$host" 1>&6
 # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:623: checking for $ac_word" >&5
+echo "configure:624: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -648,7 +649,7 @@ if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:652: checking for $ac_word" >&5
+echo "configure:653: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -696,7 +697,7 @@ fi
 fi
 
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:700: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:701: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
 
 ac_ext=c
 # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -706,11 +707,11 @@ ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS
 cross_compiling=$ac_cv_prog_cc_cross
 
 cat > conftest.$ac_ext <<EOF
-#line 710 "configure"
+#line 711 "configure"
 #include "confdefs.h"
 main(){return(0);}
 EOF
-if { (eval echo configure:714: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:715: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   ac_cv_prog_cc_works=yes
   # If we can't run a trivial program, we are probably using a cross compiler.
   if (./conftest; exit) 2>/dev/null; then
@@ -730,12 +731,12 @@ if test $ac_cv_prog_cc_works = no; then
   { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
 fi
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:734: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:735: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
 cross_compiling=$ac_cv_prog_cc_cross
 
 echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:739: checking whether we are using GNU C" >&5
+echo "configure:740: checking whether we are using GNU C" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -744,7 +745,7 @@ else
   yes;
 #endif
 EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:748: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:749: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
   ac_cv_prog_gcc=yes
 else
   ac_cv_prog_gcc=no
@@ -759,7 +760,7 @@ if test $ac_cv_prog_gcc = yes; then
   ac_save_CFLAGS="$CFLAGS"
   CFLAGS=
   echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:763: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:764: checking whether ${CC-cc} accepts -g" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -787,7 +788,7 @@ else
 fi
 
 echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:791: checking how to run the C preprocessor" >&5
+echo "configure:792: checking how to run the C preprocessor" >&5
 # On Suns, sometimes $CPP names a directory.
 if test -n "$CPP" && test -d "$CPP"; then
   CPP=
@@ -802,13 +803,13 @@ else
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp.
   cat > conftest.$ac_ext <<EOF
-#line 806 "configure"
+#line 807 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:812: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:813: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   :
@@ -819,13 +820,13 @@ else
   rm -rf conftest*
   CPP="${CC-cc} -E -traditional-cpp"
   cat > conftest.$ac_ext <<EOF
-#line 823 "configure"
+#line 824 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:829: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:830: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   :
@@ -850,7 +851,7 @@ echo "$ac_t""$CPP" 1>&6
 # Extract the first word of "ranlib", so it can be a program name with args.
 set dummy ranlib; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:854: checking for $ac_word" >&5
+echo "configure:855: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -877,7 +878,7 @@ else
 fi
 
 echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:881: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "configure:882: checking whether ${MAKE-make} sets \${MAKE}" >&5
 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -905,7 +906,7 @@ fi
 
 
 echo $ac_n "checking for style of include in makefiles""... $ac_c" 1>&6
-echo "configure:909: checking for style of include in makefiles" >&5
+echo "configure:910: checking for style of include in makefiles" >&5
 
 make_include_left=""
 make_include_right=""
@@ -966,7 +967,7 @@ echo "$ac_t""${make_include_left}file${make_include_right}" 1>&6
 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
 # ./install, which can be erroneously created by make from ./install.sh.
 echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:970: checking for a BSD compatible install" >&5
+echo "configure:971: checking for a BSD compatible install" >&5
 if test -z "$INSTALL"; then
 if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1015,12 +1016,45 @@ test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
 
 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
+for ac_prog in mawk gawk nawk awk
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:1025: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_AWK'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$AWK"; then
+  ac_cv_prog_AWK="$AWK" # Let the user override the test.
+else
+  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}:"
+  for ac_dir in $PATH; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_AWK="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+fi
+fi
+AWK="$ac_cv_prog_AWK"
+if test -n "$AWK"; then
+  echo "$ac_t""$AWK" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+test -n "$AWK" && break
+done
+
 for ac_prog in lint alint lclint tdlint
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1024: checking for $ac_word" >&5
+echo "configure:1058: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_LINT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1050,9 +1084,9 @@ done
 
 
 echo $ac_n "checking for AIX""... $ac_c" 1>&6
-echo "configure:1054: checking for AIX" >&5
+echo "configure:1088: checking for AIX" >&5
 cat > conftest.$ac_ext <<EOF
-#line 1056 "configure"
+#line 1090 "configure"
 #include "confdefs.h"
 #ifdef _AIX
   yes
@@ -1074,7 +1108,7 @@ rm -f conftest*
 
 
 echo $ac_n "checking for POSIXized ISC""... $ac_c" 1>&6
-echo "configure:1078: checking for POSIXized ISC" >&5
+echo "configure:1112: checking for POSIXized ISC" >&5
 if test -d /etc/conf/kconfig.d &&
   grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1
 then
@@ -1100,7 +1134,7 @@ fi
 
 
 echo $ac_n "checking if you want to see long compiling messages""... $ac_c" 1>&6
-echo "configure:1104: checking if you want to see long compiling messages" >&5
+echo "configure:1138: checking if you want to see long compiling messages" >&5
 
 # Check whether --enable-echo or --disable-echo was given.
 if test "${enable_echo+set}" = set; then
@@ -1148,7 +1182,7 @@ fi
 
 
 echo $ac_n "checking if you want to check memory-leaks""... $ac_c" 1>&6
-echo "configure:1152: checking if you want to check memory-leaks" >&5
+echo "configure:1186: checking if you want to check memory-leaks" >&5
 
 # Check whether --enable-find-leaks or --disable-find-leaks was given.
 if test "${enable_find_leaks+set}" = set; then
@@ -1172,7 +1206,7 @@ EOF
 
 
 echo $ac_n "checking if you want to enable debug-code""... $ac_c" 1>&6
-echo "configure:1176: checking if you want to enable debug-code" >&5
+echo "configure:1210: checking if you want to enable debug-code" >&5
 
 # Check whether --enable-debug or --disable-debug was given.
 if test "${enable_debug+set}" = set; then
@@ -1217,7 +1251,7 @@ fi
 if test -n "$GCC"
 then
 echo $ac_n "checking if you want to turn on gcc warnings""... $ac_c" 1>&6
-echo "configure:1221: checking if you want to turn on gcc warnings" >&5
+echo "configure:1255: checking if you want to turn on gcc warnings" >&5
 
 # Check whether --enable-warnings or --disable-warnings was given.
 if test "${enable_warnings+set}" = set; then
@@ -1257,9 +1291,9 @@ EOF
 if test -n "$GCC"
 then
 	echo "checking for gcc __attribute__ directives" 1>&6
-echo "configure:1261: checking for gcc __attribute__ directives" >&5
+echo "configure:1295: checking for gcc __attribute__ directives" >&5
 	cat > conftest.$ac_ext <<EOF
-#line 1263 "configure"
+#line 1297 "configure"
 #include "confdefs.h"
 #include "conftest.h"
 #include "conftest.i"
@@ -1297,7 +1331,7 @@ EOF
 EOF
 			;;
 		esac
-		if { (eval echo configure:1301: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+		if { (eval echo configure:1335: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
 			test -n "$verbose" && echo "$ac_t""... $cf_attribute" 1>&6
 			cat conftest.h >>confdefs.h
 #		else
@@ -1314,11 +1348,11 @@ fi
 if test -n "$GCC"
 then
 		cat > conftest.$ac_ext <<EOF
-#line 1318 "configure"
+#line 1352 "configure"
 int main(int argc, char *argv[]) { return argv[argc-1] == 0; }
 EOF
 		echo "checking for gcc warning options" 1>&6
-echo "configure:1322: checking for gcc warning options" >&5
+echo "configure:1356: checking for gcc warning options" >&5
 	cf_save_CFLAGS="$CFLAGS"
 	EXTRA_CFLAGS="-W -Wall"
 	cf_warn_CONST=""
@@ -1336,7 +1370,7 @@ echo "configure:1322: checking for gcc warning options" >&5
 		Wstrict-prototypes $cf_warn_CONST
 	do
 		CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
-		if { (eval echo configure:1340: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+		if { (eval echo configure:1374: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
 			test -n "$verbose" && echo "$ac_t""... -$cf_opt" 1>&6
 			EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
 			test "$cf_opt" = Wcast-qual && EXTRA_CFLAGS="$EXTRA_CFLAGS -DXTSTRINGDEFINES"
@@ -1354,7 +1388,7 @@ fi
 
 
 echo $ac_n "checking if you want full utility pathnames""... $ac_c" 1>&6
-echo "configure:1358: checking if you want full utility pathnames" >&5
+echo "configure:1392: checking if you want full utility pathnames" >&5
 
 # Check whether --enable-full-paths or --disable-full-paths was given.
 if test "${enable_full_paths+set}" = set; then
@@ -1375,7 +1409,7 @@ echo "$ac_t""$with_full_paths" 1>&6
 
 
 echo $ac_n "checking for system mailer""... $ac_c" 1>&6
-echo "configure:1379: checking for system mailer" >&5
+echo "configure:1413: checking for system mailer" >&5
 if eval "test \"`echo '$''{'cf_cv_SYSTEM_MAIL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1402,7 +1436,7 @@ EOF
 
 
 echo $ac_n "checking system mail flags""... $ac_c" 1>&6
-echo "configure:1406: checking system mail flags" >&5
+echo "configure:1440: checking system mail flags" >&5
 if eval "test \"`echo '$''{'cf_cv_system_mail_flags'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1430,7 +1464,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "chmod", so it can be a program name with args.
 set dummy chmod; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1434: checking for $ac_word" >&5
+echo "configure:1468: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_CHMOD'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1461,7 +1495,7 @@ fi
 
 else
 	echo $ac_n "checking for chmod""... $ac_c" 1>&6
-echo "configure:1465: checking for chmod" >&5
+echo "configure:1499: checking for chmod" >&5
 	echo "$ac_t""$CHMOD" 1>&6
 fi
 
@@ -1495,7 +1529,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "compress", so it can be a program name with args.
 set dummy compress; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1499: checking for $ac_word" >&5
+echo "configure:1533: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_COMPRESS'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1526,7 +1560,7 @@ fi
 
 else
 	echo $ac_n "checking for compress""... $ac_c" 1>&6
-echo "configure:1530: checking for compress" >&5
+echo "configure:1564: checking for compress" >&5
 	echo "$ac_t""$COMPRESS" 1>&6
 fi
 
@@ -1560,7 +1594,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "cp", so it can be a program name with args.
 set dummy cp; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1564: checking for $ac_word" >&5
+echo "configure:1598: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_COPY'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1591,7 +1625,7 @@ fi
 
 else
 	echo $ac_n "checking for cp""... $ac_c" 1>&6
-echo "configure:1595: checking for cp" >&5
+echo "configure:1629: checking for cp" >&5
 	echo "$ac_t""$COPY" 1>&6
 fi
 
@@ -1625,7 +1659,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "gzip", so it can be a program name with args.
 set dummy gzip; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1629: checking for $ac_word" >&5
+echo "configure:1663: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GZIP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1656,7 +1690,7 @@ fi
 
 else
 	echo $ac_n "checking for gzip""... $ac_c" 1>&6
-echo "configure:1660: checking for gzip" >&5
+echo "configure:1694: checking for gzip" >&5
 	echo "$ac_t""$GZIP" 1>&6
 fi
 
@@ -1690,7 +1724,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "mkdir", so it can be a program name with args.
 set dummy mkdir; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1694: checking for $ac_word" >&5
+echo "configure:1728: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_MKDIR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1721,7 +1755,7 @@ fi
 
 else
 	echo $ac_n "checking for mkdir""... $ac_c" 1>&6
-echo "configure:1725: checking for mkdir" >&5
+echo "configure:1759: checking for mkdir" >&5
 	echo "$ac_t""$MKDIR" 1>&6
 fi
 
@@ -1755,7 +1789,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "mv", so it can be a program name with args.
 set dummy mv; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1759: checking for $ac_word" >&5
+echo "configure:1793: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_MV'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1786,7 +1820,7 @@ fi
 
 else
 	echo $ac_n "checking for mv""... $ac_c" 1>&6
-echo "configure:1790: checking for mv" >&5
+echo "configure:1824: checking for mv" >&5
 	echo "$ac_t""$MV" 1>&6
 fi
 
@@ -1820,7 +1854,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "rm", so it can be a program name with args.
 set dummy rm; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1824: checking for $ac_word" >&5
+echo "configure:1858: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_RM'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1851,7 +1885,7 @@ fi
 
 else
 	echo $ac_n "checking for rm""... $ac_c" 1>&6
-echo "configure:1855: checking for rm" >&5
+echo "configure:1889: checking for rm" >&5
 	echo "$ac_t""$RM" 1>&6
 fi
 
@@ -1885,7 +1919,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "tar", so it can be a program name with args.
 set dummy tar; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1889: checking for $ac_word" >&5
+echo "configure:1923: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_TAR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1916,7 +1950,7 @@ fi
 
 else
 	echo $ac_n "checking for tar""... $ac_c" 1>&6
-echo "configure:1920: checking for tar" >&5
+echo "configure:1954: checking for tar" >&5
 	echo "$ac_t""$TAR" 1>&6
 fi
 
@@ -1950,7 +1984,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "touch", so it can be a program name with args.
 set dummy touch; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1954: checking for $ac_word" >&5
+echo "configure:1988: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_TOUCH'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1981,7 +2015,7 @@ fi
 
 else
 	echo $ac_n "checking for touch""... $ac_c" 1>&6
-echo "configure:1985: checking for touch" >&5
+echo "configure:2019: checking for touch" >&5
 	echo "$ac_t""$TOUCH" 1>&6
 fi
 
@@ -2015,7 +2049,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "gunzip", so it can be a program name with args.
 set dummy gunzip; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2019: checking for $ac_word" >&5
+echo "configure:2053: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_UNCOMPRESS'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2046,7 +2080,7 @@ fi
 
 else
 	echo $ac_n "checking for gunzip""... $ac_c" 1>&6
-echo "configure:2050: checking for gunzip" >&5
+echo "configure:2084: checking for gunzip" >&5
 	echo "$ac_t""$UNCOMPRESS" 1>&6
 fi
 
@@ -2080,7 +2114,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "unzip", so it can be a program name with args.
 set dummy unzip; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2084: checking for $ac_word" >&5
+echo "configure:2118: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_UNZIP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2111,7 +2145,7 @@ fi
 
 else
 	echo $ac_n "checking for unzip""... $ac_c" 1>&6
-echo "configure:2115: checking for unzip" >&5
+echo "configure:2149: checking for unzip" >&5
 	echo "$ac_t""$UNZIP" 1>&6
 fi
 
@@ -2145,7 +2179,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "uudecode", so it can be a program name with args.
 set dummy uudecode; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2149: checking for $ac_word" >&5
+echo "configure:2183: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_UUDECODE'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2176,7 +2210,7 @@ fi
 
 else
 	echo $ac_n "checking for uudecode""... $ac_c" 1>&6
-echo "configure:2180: checking for uudecode" >&5
+echo "configure:2214: checking for uudecode" >&5
 	echo "$ac_t""$UUDECODE" 1>&6
 fi
 
@@ -2210,7 +2244,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "zcat", so it can be a program name with args.
 set dummy zcat; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2214: checking for $ac_word" >&5
+echo "configure:2248: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_ZCAT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2241,7 +2275,7 @@ fi
 
 else
 	echo $ac_n "checking for zcat""... $ac_c" 1>&6
-echo "configure:2245: checking for zcat" >&5
+echo "configure:2279: checking for zcat" >&5
 	echo "$ac_t""$ZCAT" 1>&6
 fi
 
@@ -2275,7 +2309,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "zip", so it can be a program name with args.
 set dummy zip; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2279: checking for $ac_word" >&5
+echo "configure:2313: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_ZIP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2306,7 +2340,7 @@ fi
 
 else
 	echo $ac_n "checking for zip""... $ac_c" 1>&6
-echo "configure:2310: checking for zip" >&5
+echo "configure:2344: checking for zip" >&5
 	echo "$ac_t""$ZIP" 1>&6
 fi
 
@@ -2359,7 +2393,7 @@ EOF
 if test -z "$GCC" ; then
 	
 echo $ac_n "checking for ${CC-cc} option to accept ANSI C""... $ac_c" 1>&6
-echo "configure:2363: checking for ${CC-cc} option to accept ANSI C" >&5
+echo "configure:2397: checking for ${CC-cc} option to accept ANSI C" >&5
 if eval "test \"`echo '$''{'cf_cv_ansi_cc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2383,7 +2417,7 @@ for cf_arg in "-DCC_HAS_PROTOS" \
 do
 	CFLAGS="$cf_save_CFLAGS $cf_arg"
 	cat > conftest.$ac_ext <<EOF
-#line 2387 "configure"
+#line 2421 "configure"
 #include "confdefs.h"
 
 #ifndef CC_HAS_PROTOS
@@ -2399,7 +2433,7 @@ int main() {
 	struct s2 {int (*f) (double a);};
 ; return 0; }
 EOF
-if { (eval echo configure:2403: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2437: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ansi_cc="$cf_arg"; break
 else
@@ -2427,12 +2461,12 @@ fi
 
 fi
 echo $ac_n "checking for working const""... $ac_c" 1>&6
-echo "configure:2431: checking for working const" >&5
+echo "configure:2465: checking for working const" >&5
 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2436 "configure"
+#line 2470 "configure"
 #include "confdefs.h"
 
 int main() {
@@ -2481,7 +2515,7 @@ ccp = (char const *const *) p;
 
 ; return 0; }
 EOF
-if { (eval echo configure:2485: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2519: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_const=yes
 else
@@ -2506,7 +2540,7 @@ PROG_EXT=
 TRY_CFLAGS=
 case $host_os in
 aix4*)
-	CFLAGS="$CFLAGS -DAIX4 -D_BSD=44 -D_AIX" 
+	CFLAGS="$CFLAGS -DAIX4 -D_BSD=44 -D_AIX"
 	LIBS="$LIBS -lbsd"
 	;;
 aix*)
@@ -2516,14 +2550,14 @@ apollo*)
 	TRY_CFLAGS="$TRY_CFLAGS -D_BUILTINS -W0,-opt,4"
 	;;
 bsdi*)
-	CFLAGS="$CFLAGS -DBSDI" 
+	CFLAGS="$CFLAGS -DBSDI"
 	;;
 clix*)
 	# Tested on CLIX 3.1 (T.Dickey).  The original makefile entry
 	# contributed by Alex Matulich (matuli_a@marlin.navsea.navy.mil) also
 	# references -lmalloc and -lbsd.
 	echo $ac_n "checking for strcmp in -lc_s""... $ac_c" 1>&6
-echo "configure:2527: checking for strcmp in -lc_s" >&5
+echo "configure:2561: checking for strcmp in -lc_s" >&5
 ac_lib_var=`echo c_s'_'strcmp | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2531,7 +2565,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lc_s  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2535 "configure"
+#line 2569 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2542,7 +2576,7 @@ int main() {
 strcmp()
 ; return 0; }
 EOF
-if { (eval echo configure:2546: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2580: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2574,10 +2608,10 @@ convex*)
 	CFLAGS="$CFLAGS -D__STDC__ -Dunix"
 	;;
 dgux*)
-	CFLAGS="$CFLAGS -DDGUX" 
+	CFLAGS="$CFLAGS -DDGUX"
 	;;
 hpux*)
-	CFLAGS="$CFLAGS -DSNAKE" 
+	CFLAGS="$CFLAGS -DSNAKE"
 	;;
 isc*)
 	# -DPOSIX_JC is necessary, else LYBookmark.c never finds out what a mode_t is.
@@ -2588,10 +2622,10 @@ irix*)
 	# The original makefile used the $CFLAGS option -cckr for some form
 	# of K&R compatibility.  However, this causes compilation warnings for
 	# varargs on IRIX 5.2, and does not appear to be needed.
-	#removed: CFLAGS="$CFLAGS -cckr" 
+	#removed: CFLAGS="$CFLAGS -cckr"
 	;;
 linux*)
-	CFLAGS="$CFLAGS -DLINUX" 
+	CFLAGS="$CFLAGS -DLINUX"
 	;;
 next*)
 	CFLAGS="$CFLAGS -DNEXT -DXMOSAIC_HACK"
@@ -2605,11 +2639,11 @@ os2*)
 	LDFLAGS=`echo "$LDFLAGS -Zmt -Zcrtdll" | sed "s/-Zexe//g"`
 	PROG_EXT=".exe"
 	;;
-osf4*) 
-	# The -Olimit flag (see below) is no longer available with 
-	# Digital C 5.2, which is bundled with Digital UNIX 4.0. 
-	CFLAGS="$CFLAGS -DDSYS5" 
-	;; 
+osf4*)
+	# The -Olimit flag (see below) is no longer available with
+	# Digital C 5.2, which is bundled with Digital UNIX 4.0.
+	CFLAGS="$CFLAGS -DDSYS5"
+	;;
 osf*)
 	# Increase the maximum size of functions that will be optimized.
 	test -z "$GCC" && TRY_CFLAGS="$TRY_CFLAGS -O -Olimit 4000"
@@ -2631,7 +2665,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2635: checking for $ac_word" >&5
+echo "configure:2669: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2675,17 +2709,17 @@ sony-newsos*)
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2679: checking for $ac_hdr" >&5
+echo "configure:2713: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2684 "configure"
+#line 2718 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2689: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2723: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2724,22 +2758,22 @@ sunos4*)
 ultrix*)
 	# Increase the maximum size of functions that will be optimized.
 	test -z "$GCC" && TRY_CFLAGS="$TRY_CFLAGS -O -Olimit 600 -G 7"
-	CFLAGS="$CFLAGS -DULTRIX" 
+	CFLAGS="$CFLAGS -DULTRIX"
 	for ac_hdr in cursesX.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2733: checking for $ac_hdr" >&5
+echo "configure:2767: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2738 "configure"
+#line 2772 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2743: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2777: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2777,16 +2811,16 @@ if test -n "$TRY_CFLAGS" ; then
 	cf_save_CFLAGS="$CFLAGS"
 	CFLAGS="$CFLAGS $TRY_CFLAGS"
 	echo $ac_n "checking if we should use compile options $TRY_CFLAGS""... $ac_c" 1>&6
-echo "configure:2781: checking if we should use compile options $TRY_CFLAGS" >&5
+echo "configure:2815: checking if we should use compile options $TRY_CFLAGS" >&5
 	cat > conftest.$ac_ext <<EOF
-#line 2783 "configure"
+#line 2817 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 int main() {
 FILE *fp = stdin
 ; return 0; }
 EOF
-if { (eval echo configure:2790: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2824: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -2804,7 +2838,7 @@ fi
 ### Look for network libraries first, since some functions (such as gethostname)
 ### are used in a lot of places.
 echo $ac_n "checking if you want socks library""... $ac_c" 1>&6
-echo "configure:2808: checking if you want socks library" >&5
+echo "configure:2842: checking if you want socks library" >&5
 if eval "test \"`echo '$''{'cf_cv_use_libsocks'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2824,7 +2858,7 @@ fi
 echo "$ac_t""$cf_cv_use_libsocks" 1>&6
 
 echo $ac_n "checking if you want socks5 library""... $ac_c" 1>&6
-echo "configure:2828: checking if you want socks5 library" >&5
+echo "configure:2862: checking if you want socks5 library" >&5
 if eval "test \"`echo '$''{'cf_cv_use_libsocks5'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2890,7 +2924,7 @@ cat >> confdefs.h <<\EOF
 EOF
 
 cat > conftest.$ac_ext <<EOF
-#line 2894 "configure"
+#line 2928 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -2899,7 +2933,7 @@ int main() {
 	accept((char *)0)
 ; return 0; }
 EOF
-if { (eval echo configure:2903: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2937: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   :
 else
   echo "configure: failed program was:" >&5
@@ -2929,9 +2963,9 @@ cat >> confdefs.h <<\EOF
 EOF
 
 echo $ac_n "checking if the socks library uses socks4 prefix""... $ac_c" 1>&6
-echo "configure:2933: checking if the socks library uses socks4 prefix" >&5
+echo "configure:2967: checking if the socks library uses socks4 prefix" >&5
 cat > conftest.$ac_ext <<EOF
-#line 2935 "configure"
+#line 2969 "configure"
 #include "confdefs.h"
 
 #include <socks.h>
@@ -2940,7 +2974,7 @@ int main() {
 	Rinit((char *)0)
 ; return 0; }
 EOF
-if { (eval echo configure:2944: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2978: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cat >> confdefs.h <<\EOF
 #define USE_SOCKS4_PREFIX 1
@@ -2952,14 +2986,14 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 2956 "configure"
+#line 2990 "configure"
 #include "confdefs.h"
 #include <socks.h>
 int main() {
 SOCKSinit((char *)0)
 ; return 0; }
 EOF
-if { (eval echo configure:2963: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2997: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_use_socks4=no
 else
@@ -3028,7 +3062,7 @@ else
 	
 cf_test_netlibs=no
 echo $ac_n "checking for network libraries""... $ac_c" 1>&6
-echo "configure:3032: checking for network libraries" >&5
+echo "configure:3066: checking for network libraries" >&5
 if eval "test \"`echo '$''{'cf_cv_netlibs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3039,12 +3073,12 @@ cf_test_netlibs=yes
 for ac_func in gethostname
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:3043: checking for $ac_func" >&5
+echo "configure:3077: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3048 "configure"
+#line 3082 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -3067,7 +3101,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:3071: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3105: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -3090,7 +3124,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for gethostname in -lnsl""... $ac_c" 1>&6
-echo "configure:3094: checking for gethostname in -lnsl" >&5
+echo "configure:3128: checking for gethostname in -lnsl" >&5
 ac_lib_var=`echo nsl'_'gethostname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3098,7 +3132,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3102 "configure"
+#line 3136 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3109,7 +3143,7 @@ int main() {
 gethostname()
 ; return 0; }
 EOF
-if { (eval echo configure:3113: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3147: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3142,7 +3176,7 @@ else
 	
 		
 echo $ac_n "checking for gethostname in -lsocket""... $ac_c" 1>&6
-echo "configure:3146: checking for gethostname in -lsocket" >&5
+echo "configure:3180: checking for gethostname in -lsocket" >&5
 ac_lib_var=`echo socket'_'gethostname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3150,7 +3184,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsocket $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3154 "configure"
+#line 3188 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3161,7 +3195,7 @@ int main() {
 gethostname()
 ; return 0; }
 EOF
-if { (eval echo configure:3165: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3199: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3205,21 +3239,21 @@ done
 # FIXME:  sequent needs this library (i.e., -lsocket -linet -lnsl), but
 # I don't know the entrypoints - 97/7/22 TD
 echo $ac_n "checking for -linet""... $ac_c" 1>&6
-echo "configure:3209: checking for -linet" >&5
+echo "configure:3243: checking for -linet" >&5
 if eval "test \"`echo '$''{'ac_cv_lib_inet'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   ac_save_LIBS="$LIBS"
 LIBS="-linet  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3216 "configure"
+#line 3250 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:3223: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3257: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   ac_cv_lib_inet=yes
 else
@@ -3242,12 +3276,12 @@ if test "$ac_cv_func_lsocket" != no ; then
 for ac_func in socket
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:3246: checking for $ac_func" >&5
+echo "configure:3280: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3251 "configure"
+#line 3285 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -3270,7 +3304,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:3274: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3308: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -3293,7 +3327,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for socket in -lsocket""... $ac_c" 1>&6
-echo "configure:3297: checking for socket in -lsocket" >&5
+echo "configure:3331: checking for socket in -lsocket" >&5
 ac_lib_var=`echo socket'_'socket | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3301,7 +3335,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsocket $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3305 "configure"
+#line 3339 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3312,7 +3346,7 @@ int main() {
 socket()
 ; return 0; }
 EOF
-if { (eval echo configure:3316: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3350: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3345,7 +3379,7 @@ else
 	
 		
 echo $ac_n "checking for socket in -lbsd""... $ac_c" 1>&6
-echo "configure:3349: checking for socket in -lbsd" >&5
+echo "configure:3383: checking for socket in -lbsd" >&5
 ac_lib_var=`echo bsd'_'socket | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3353,7 +3387,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lbsd $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3357 "configure"
+#line 3391 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3364,7 +3398,7 @@ int main() {
 socket()
 ; return 0; }
 EOF
-if { (eval echo configure:3368: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3402: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3409,12 +3443,12 @@ fi
 for ac_func in gethostbyname
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:3413: checking for $ac_func" >&5
+echo "configure:3447: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3418 "configure"
+#line 3452 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -3437,7 +3471,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:3441: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3475: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -3460,7 +3494,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6
-echo "configure:3464: checking for gethostbyname in -lnsl" >&5
+echo "configure:3498: checking for gethostbyname in -lnsl" >&5
 ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3468,7 +3502,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3472 "configure"
+#line 3506 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3479,7 +3513,7 @@ int main() {
 gethostbyname()
 ; return 0; }
 EOF
-if { (eval echo configure:3483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3517: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3520,12 +3554,12 @@ done
 for ac_func in strcasecmp
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:3524: checking for $ac_func" >&5
+echo "configure:3558: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3529 "configure"
+#line 3563 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -3548,7 +3582,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:3552: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3586: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -3571,7 +3605,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for strcasecmp in -lresolv""... $ac_c" 1>&6
-echo "configure:3575: checking for strcasecmp in -lresolv" >&5
+echo "configure:3609: checking for strcasecmp in -lresolv" >&5
 ac_lib_var=`echo resolv'_'strcasecmp | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3579,7 +3613,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lresolv $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3583 "configure"
+#line 3617 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3590,7 +3624,7 @@ int main() {
 strcasecmp()
 ; return 0; }
 EOF
-if { (eval echo configure:3594: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3628: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3636,7 +3670,7 @@ test $cf_test_netlibs = no && echo "$cf_cv_netlibs" >&6
 fi
 
 echo $ac_n "checking for screen type""... $ac_c" 1>&6
-echo "configure:3640: checking for screen type" >&5
+echo "configure:3674: checking for screen type" >&5
 if eval "test \"`echo '$''{'cf_cv_screen'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3671,12 +3705,12 @@ case $cf_cv_screen in
 curses)
 	
 echo $ac_n "checking for initscr""... $ac_c" 1>&6
-echo "configure:3675: checking for initscr" >&5
+echo "configure:3709: checking for initscr" >&5
 if eval "test \"`echo '$''{'ac_cv_func_initscr'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3680 "configure"
+#line 3714 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char initscr(); below.  */
@@ -3699,7 +3733,7 @@ initscr();
 
 ; return 0; }
 EOF
-if { (eval echo configure:3703: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3737: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_initscr=yes"
 else
@@ -3720,7 +3754,7 @@ else
 case $host_os in #(vi
 freebsd*) #(vi
 	echo $ac_n "checking for tgoto in -lmytinfo""... $ac_c" 1>&6
-echo "configure:3724: checking for tgoto in -lmytinfo" >&5
+echo "configure:3758: checking for tgoto in -lmytinfo" >&5
 ac_lib_var=`echo mytinfo'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3728,7 +3762,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lmytinfo  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3732 "configure"
+#line 3766 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3739,7 +3773,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:3743: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3777: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3762,7 +3796,7 @@ fi
 	;;
 hpux10.*)
 	echo $ac_n "checking for initscr in -lcur_colr""... $ac_c" 1>&6
-echo "configure:3766: checking for initscr in -lcur_colr" >&5
+echo "configure:3800: checking for initscr in -lcur_colr" >&5
 ac_lib_var=`echo cur_colr'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3770,7 +3804,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lcur_colr  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3774 "configure"
+#line 3808 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3781,7 +3815,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:3785: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3819: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3805,7 +3839,7 @@ else
   echo "$ac_t""no" 1>&6
 
 	echo $ac_n "checking for initscr in -lHcurses""... $ac_c" 1>&6
-echo "configure:3809: checking for initscr in -lHcurses" >&5
+echo "configure:3843: checking for initscr in -lHcurses" >&5
 ac_lib_var=`echo Hcurses'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3813,7 +3847,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lHcurses  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3817 "configure"
+#line 3851 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3824,7 +3858,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:3828: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3862: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3870,12 +3904,12 @@ if test ".$ac_cv_func_initscr" != .yes ; then
 	# Check for library containing tgoto.  Do this before curses library
 	# because it may be needed to link the test-case for initscr.
 	echo $ac_n "checking for tgoto""... $ac_c" 1>&6
-echo "configure:3874: checking for tgoto" >&5
+echo "configure:3908: checking for tgoto" >&5
 if eval "test \"`echo '$''{'ac_cv_func_tgoto'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3879 "configure"
+#line 3913 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char tgoto(); below.  */
@@ -3898,7 +3932,7 @@ tgoto();
 
 ; return 0; }
 EOF
-if { (eval echo configure:3902: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3936: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_tgoto=yes"
 else
@@ -3919,7 +3953,7 @@ else
 		for cf_term_lib in termcap termlib unknown
 		do
 			echo $ac_n "checking for tgoto in -l$cf_term_lib""... $ac_c" 1>&6
-echo "configure:3923: checking for tgoto in -l$cf_term_lib" >&5
+echo "configure:3957: checking for tgoto in -l$cf_term_lib" >&5
 ac_lib_var=`echo $cf_term_lib'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3927,7 +3961,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-l$cf_term_lib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3931 "configure"
+#line 3965 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3938,7 +3972,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:3942: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3976: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3968,7 +4002,7 @@ fi
 	for cf_curs_lib in cursesX curses ncurses xcurses jcurses unknown
 	do
 		echo $ac_n "checking for initscr in -l$cf_curs_lib""... $ac_c" 1>&6
-echo "configure:3972: checking for initscr in -l$cf_curs_lib" >&5
+echo "configure:4006: checking for initscr in -l$cf_curs_lib" >&5
 ac_lib_var=`echo $cf_curs_lib'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3976,7 +4010,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-l$cf_curs_lib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3980 "configure"
+#line 4014 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3987,7 +4021,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:3991: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4025: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4013,16 +4047,16 @@ fi
 	LIBS="-l$cf_curs_lib $cf_save_LIBS"
 	if test "$cf_term_lib" = unknown ; then
 		echo $ac_n "checking if we can link with $cf_curs_lib library""... $ac_c" 1>&6
-echo "configure:4017: checking if we can link with $cf_curs_lib library" >&5
+echo "configure:4051: checking if we can link with $cf_curs_lib library" >&5
 		cat > conftest.$ac_ext <<EOF
-#line 4019 "configure"
+#line 4053 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:4026: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4060: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -4036,16 +4070,16 @@ rm -f conftest*
 		test $cf_result = no && { echo "configure: error: Cannot link curses library" 1>&2; exit 1; }
 	elif test "$cf_term_lib" != predefined ; then
 		echo $ac_n "checking if we need both $cf_curs_lib and $cf_term_lib libraries""... $ac_c" 1>&6
-echo "configure:4040: checking if we need both $cf_curs_lib and $cf_term_lib libraries" >&5
+echo "configure:4074: checking if we need both $cf_curs_lib and $cf_term_lib libraries" >&5
 		cat > conftest.$ac_ext <<EOF
-#line 4042 "configure"
+#line 4076 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr(); tgoto((char *)0, 0, 0);
 ; return 0; }
 EOF
-if { (eval echo configure:4049: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4083: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_result=no
 else
@@ -4055,14 +4089,14 @@ else
   
 			LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS"
 			cat > conftest.$ac_ext <<EOF
-#line 4059 "configure"
+#line 4093 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:4066: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4100: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -4084,14 +4118,14 @@ fi
 
 	
 echo $ac_n "checking for curses performance tradeoff""... $ac_c" 1>&6
-echo "configure:4088: checking for curses performance tradeoff" >&5
+echo "configure:4122: checking for curses performance tradeoff" >&5
 if eval "test \"`echo '$''{'cf_cv_curs_performance'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cf_cv_curs_performance=no
     cat > conftest.$ac_ext <<EOF
-#line 4095 "configure"
+#line 4129 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -4105,11 +4139,11 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:4109: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4143: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 	cat > conftest.$ac_ext <<EOF
-#line 4113 "configure"
+#line 4147 "configure"
 #include "confdefs.h"
 
 #define CURS_PERFORMANCE
@@ -4124,7 +4158,7 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:4128: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4162: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_curs_performance=yes
 else
@@ -4149,13 +4183,13 @@ EOF
 ncurses)
 	
 echo $ac_n "checking for ncurses header file""... $ac_c" 1>&6
-echo "configure:4153: checking for ncurses header file" >&5
+echo "configure:4187: checking for ncurses header file" >&5
 if eval "test \"`echo '$''{'cf_cv_ncurses_header'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 4159 "configure"
+#line 4193 "configure"
 #include "confdefs.h"
 #include <curses.h>
 int main() {
@@ -4172,7 +4206,7 @@ make an error
 	
 ; return 0; }
 EOF
-if { (eval echo configure:4176: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4210: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ncurses_header=predefined
 else
@@ -4258,7 +4292,7 @@ done
 	;;
 esac
 echo $ac_n "checking for ncurses version""... $ac_c" 1>&6
-echo "configure:4262: checking for ncurses version" >&5
+echo "configure:4296: checking for ncurses version" >&5
 if eval "test \"`echo '$''{'cf_cv_ncurses_version'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4283,7 +4317,7 @@ Autoconf "old"
 #endif
 EOF
 	cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
-	{ (eval echo configure:4287: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
+	{ (eval echo configure:4321: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
 	if test -f conftest.out ; then
 		cf_out=`cat conftest.out | sed -e 's@^Autoconf @@' -e 's@^[^"]*"@@' -e 's@".*@@'`
 		test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
@@ -4292,7 +4326,7 @@ EOF
 
 else
   cat > conftest.$ac_ext <<EOF
-#line 4296 "configure"
+#line 4330 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -4315,7 +4349,7 @@ int main()
 	exit(0);
 }
 EOF
-if { (eval echo configure:4319: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:4353: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   
 	cf_cv_ncurses_version=`cat $cf_tempfile`
@@ -4340,7 +4374,7 @@ echo "$ac_t""$cf_cv_ncurses_version" 1>&6
 cf_ncurses_LIBS=""
 cf_ncurses_SAVE="$LIBS"
 echo $ac_n "checking for Gpm_Open in -lgpm""... $ac_c" 1>&6
-echo "configure:4344: checking for Gpm_Open in -lgpm" >&5
+echo "configure:4378: checking for Gpm_Open in -lgpm" >&5
 ac_lib_var=`echo gpm'_'Gpm_Open | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4348,7 +4382,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lgpm  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4352 "configure"
+#line 4386 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4359,7 +4393,7 @@ int main() {
 Gpm_Open()
 ; return 0; }
 EOF
-if { (eval echo configure:4363: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4397: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4375,7 +4409,7 @@ fi
 if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
   echo "$ac_t""yes" 1>&6
   echo $ac_n "checking for initscr in -lgpm""... $ac_c" 1>&6
-echo "configure:4379: checking for initscr in -lgpm" >&5
+echo "configure:4413: checking for initscr in -lgpm" >&5
 ac_lib_var=`echo gpm'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4383,7 +4417,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lgpm  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4387 "configure"
+#line 4421 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4394,7 +4428,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:4398: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4432: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4425,7 +4459,7 @@ freebsd*)
 	# This is only necessary if you are linking against an obsolete
 	# version of ncurses (but it should do no harm, since it's static).
 	echo $ac_n "checking for tgoto in -lmytinfo""... $ac_c" 1>&6
-echo "configure:4429: checking for tgoto in -lmytinfo" >&5
+echo "configure:4463: checking for tgoto in -lmytinfo" >&5
 ac_lib_var=`echo mytinfo'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4433,7 +4467,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lmytinfo  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4437 "configure"
+#line 4471 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4444,7 +4478,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:4448: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4482: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4472,12 +4506,12 @@ LIBS="$cf_ncurses_LIBS $LIBS"
 	cf_cv_have_lib_ncurses=no
 	cf_libdir=""
 	echo $ac_n "checking for initscr""... $ac_c" 1>&6
-echo "configure:4476: checking for initscr" >&5
+echo "configure:4510: checking for initscr" >&5
 if eval "test \"`echo '$''{'ac_cv_func_initscr'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4481 "configure"
+#line 4515 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char initscr(); below.  */
@@ -4500,7 +4534,7 @@ initscr();
 
 ; return 0; }
 EOF
-if { (eval echo configure:4504: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4538: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_initscr=yes"
 else
@@ -4520,17 +4554,17 @@ else
 
 		cf_save_LIBS="$LIBS"
 		echo $ac_n "checking for initscr in -lncurses""... $ac_c" 1>&6
-echo "configure:4524: checking for initscr in -lncurses" >&5
+echo "configure:4558: checking for initscr in -lncurses" >&5
 		LIBS="-lncurses $LIBS"
 		cat > conftest.$ac_ext <<EOF
-#line 4527 "configure"
+#line 4561 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:4534: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4568: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 cf_cv_have_lib_ncurses=yes
@@ -4557,17 +4591,17 @@ test "$prefix" != /usr           && cf_search="$cf_search /usr/lib /usr/lib/ncur
 			for cf_libdir in $cf_search
 			do
 				echo $ac_n "checking for -lncurses in $cf_libdir""... $ac_c" 1>&6
-echo "configure:4561: checking for -lncurses in $cf_libdir" >&5
+echo "configure:4595: checking for -lncurses in $cf_libdir" >&5
 				LIBS="-L$cf_libdir -lncurses $cf_save_LIBS"
 				cat > conftest.$ac_ext <<EOF
-#line 4564 "configure"
+#line 4598 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:4571: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4605: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 		 cf_cv_have_lib_ncurses=yes
@@ -4599,7 +4633,7 @@ esac
 
 if test -n "$cf_ncurses_LIBS" ; then
 	echo $ac_n "checking if we can link ncurses without $cf_ncurses_LIBS""... $ac_c" 1>&6
-echo "configure:4603: checking if we can link ncurses without $cf_ncurses_LIBS" >&5
+echo "configure:4637: checking if we can link ncurses without $cf_ncurses_LIBS" >&5
 	cf_ncurses_SAVE="$LIBS"
 	for p in $cf_ncurses_LIBS ; do
 		q=`echo $LIBS | sed -e 's/'$p' //' -e 's/'$p'$//'`
@@ -4608,14 +4642,14 @@ echo "configure:4603: checking if we can link ncurses without $cf_ncurses_LIBS"
 		fi
 	done
 	cat > conftest.$ac_ext <<EOF
-#line 4612 "configure"
+#line 4646 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
 ; return 0; }
 EOF
-if { (eval echo configure:4619: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4653: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 else
@@ -4632,20 +4666,20 @@ fi
 slang)
 	
 echo $ac_n "checking for slang header file""... $ac_c" 1>&6
-echo "configure:4636: checking for slang header file" >&5
+echo "configure:4670: checking for slang header file" >&5
 if eval "test \"`echo '$''{'cf_cv_slang_header'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 4642 "configure"
+#line 4676 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
 printf("%s\n", SLANG_VERSION)
 ; return 0; }
 EOF
-if { (eval echo configure:4649: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4683: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_slang_header=predefined
 else
@@ -4729,7 +4763,7 @@ cf_cv_lib_termcap=none
 # HP-UX 9.x terminfo has setupterm, but no tigetstr.
 if test "$termlib" = none; then
 	echo $ac_n "checking for tigetstr in -ltermlib""... $ac_c" 1>&6
-echo "configure:4733: checking for tigetstr in -ltermlib" >&5
+echo "configure:4767: checking for tigetstr in -ltermlib" >&5
 ac_lib_var=`echo termlib'_'tigetstr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4737,7 +4771,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ltermlib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4741 "configure"
+#line 4775 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4748,7 +4782,7 @@ int main() {
 tigetstr()
 ; return 0; }
 EOF
-if { (eval echo configure:4752: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4786: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4771,7 +4805,7 @@ fi
 fi
 if test "$cf_cv_lib_termcap" = none; then
 	echo $ac_n "checking for tgoto in -ltermlib""... $ac_c" 1>&6
-echo "configure:4775: checking for tgoto in -ltermlib" >&5
+echo "configure:4809: checking for tgoto in -ltermlib" >&5
 ac_lib_var=`echo termlib'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4779,7 +4813,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ltermlib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4783 "configure"
+#line 4817 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4790,7 +4824,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:4794: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4828: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4814,7 +4848,7 @@ fi
 if test "$cf_cv_lib_termcap" = none; then
 	# allow curses library for broken AIX system.
 	echo $ac_n "checking for initscr in -lcurses""... $ac_c" 1>&6
-echo "configure:4818: checking for initscr in -lcurses" >&5
+echo "configure:4852: checking for initscr in -lcurses" >&5
 ac_lib_var=`echo curses'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4822,7 +4856,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lcurses  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4826 "configure"
+#line 4860 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4833,7 +4867,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:4837: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4871: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4854,7 +4888,7 @@ else
 fi
 
 	echo $ac_n "checking for tgoto in -ltermcap""... $ac_c" 1>&6
-echo "configure:4858: checking for tgoto in -ltermcap" >&5
+echo "configure:4892: checking for tgoto in -ltermcap" >&5
 ac_lib_var=`echo termcap'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4862,7 +4896,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ltermcap  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4866 "configure"
+#line 4900 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4873,7 +4907,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:4877: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4911: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4896,7 +4930,7 @@ fi
 fi
 if test "$cf_cv_lib_termcap" = none; then
 	echo $ac_n "checking for tgoto in -ltermcap""... $ac_c" 1>&6
-echo "configure:4900: checking for tgoto in -ltermcap" >&5
+echo "configure:4934: checking for tgoto in -ltermcap" >&5
 ac_lib_var=`echo termcap'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4904,7 +4938,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ltermcap  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4908 "configure"
+#line 4942 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4915,7 +4949,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:4919: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4953: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4938,7 +4972,7 @@ fi
 fi
 if test "$cf_cv_lib_termcap" = none; then
 	echo $ac_n "checking for tgoto in -lncurses""... $ac_c" 1>&6
-echo "configure:4942: checking for tgoto in -lncurses" >&5
+echo "configure:4976: checking for tgoto in -lncurses" >&5
 ac_lib_var=`echo ncurses'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4946,7 +4980,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lncurses  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4950 "configure"
+#line 4984 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4957,7 +4991,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:4961: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4995: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4987,12 +5021,12 @@ fi
 
 cf_slang_LIBS2="$LIBS"
 echo $ac_n "checking for acos""... $ac_c" 1>&6
-echo "configure:4991: checking for acos" >&5
+echo "configure:5025: checking for acos" >&5
 if eval "test \"`echo '$''{'ac_cv_func_acos'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4996 "configure"
+#line 5030 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char acos(); below.  */
@@ -5015,7 +5049,7 @@ acos();
 
 ; return 0; }
 EOF
-if { (eval echo configure:5019: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5053: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_acos=yes"
 else
@@ -5034,7 +5068,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for acos in -lm""... $ac_c" 1>&6
-echo "configure:5038: checking for acos in -lm" >&5
+echo "configure:5072: checking for acos in -lm" >&5
 ac_lib_var=`echo m'_'acos | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5042,7 +5076,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lm $LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5046 "configure"
+#line 5080 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5053,7 +5087,7 @@ int main() {
 acos()
 ; return 0; }
 EOF
-if { (eval echo configure:5057: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5091: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5093,12 +5127,12 @@ fi
 	cf_cv_have_lib_slang=no
 	cf_libdir=""
 	echo $ac_n "checking for SLtt_get_screen_size""... $ac_c" 1>&6
-echo "configure:5097: checking for SLtt_get_screen_size" >&5
+echo "configure:5131: checking for SLtt_get_screen_size" >&5
 if eval "test \"`echo '$''{'ac_cv_func_SLtt_get_screen_size'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5102 "configure"
+#line 5136 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char SLtt_get_screen_size(); below.  */
@@ -5121,7 +5155,7 @@ SLtt_get_screen_size();
 
 ; return 0; }
 EOF
-if { (eval echo configure:5125: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5159: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_SLtt_get_screen_size=yes"
 else
@@ -5141,17 +5175,17 @@ else
 
 		cf_save_LIBS="$LIBS"
 		echo $ac_n "checking for SLtt_get_screen_size in -lslang""... $ac_c" 1>&6
-echo "configure:5145: checking for SLtt_get_screen_size in -lslang" >&5
+echo "configure:5179: checking for SLtt_get_screen_size in -lslang" >&5
 		LIBS="-lslang $LIBS"
 		cat > conftest.$ac_ext <<EOF
-#line 5148 "configure"
+#line 5182 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
 SLtt_get_screen_size()
 ; return 0; }
 EOF
-if { (eval echo configure:5155: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5189: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 cf_cv_have_lib_slang=yes
@@ -5178,17 +5212,17 @@ test "$prefix" != /usr           && cf_search="$cf_search /usr/lib /usr/lib/slan
 			for cf_libdir in $cf_search
 			do
 				echo $ac_n "checking for -lslang in $cf_libdir""... $ac_c" 1>&6
-echo "configure:5182: checking for -lslang in $cf_libdir" >&5
+echo "configure:5216: checking for -lslang in $cf_libdir" >&5
 				LIBS="-L$cf_libdir -lslang $cf_save_LIBS"
 				cat > conftest.$ac_ext <<EOF
-#line 5185 "configure"
+#line 5219 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
 SLtt_get_screen_size()
 ; return 0; }
 EOF
-if { (eval echo configure:5192: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5226: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 		 cf_cv_have_lib_slang=yes
@@ -5219,7 +5253,7 @@ esac
 
 cf_slang_LIBS3="$LIBS"
 echo $ac_n "checking if we can link slang without termcap""... $ac_c" 1>&6
-echo "configure:5223: checking if we can link slang without termcap" >&5
+echo "configure:5257: checking if we can link slang without termcap" >&5
 if test -n "`echo $cf_slang_LIBS1 | sed -e 's/ //g'`" ; then
 	cf_exclude=`echo ".$cf_slang_LIBS2" | sed -e "s@$cf_slang_LIBS1@@" -e 's@^.@@'`
 else
@@ -5227,14 +5261,14 @@ else
 fi
 LIBS=`echo ".$cf_slang_LIBS3" | sed -e "s@$cf_exclude@@" -e 's@^.@@'`
 cat > conftest.$ac_ext <<EOF
-#line 5231 "configure"
+#line 5265 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
 SLtt_get_screen_size()
 ; return 0; }
 EOF
-if { (eval echo configure:5238: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5272: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -5254,7 +5288,7 @@ eval cf_libdir=$libdir
 cf_libdir=`echo $cf_libdir | sed -e s@'^NONE/'@$prefix/@ -e s@'^NONE/'@$ac_default_prefix/@`
 
 echo $ac_n "checking for location of config-file""... $ac_c" 1>&6
-echo "configure:5258: checking for location of config-file" >&5
+echo "configure:5292: checking for location of config-file" >&5
 LYNX_CFG_FILE=$cf_libdir/lynx.cfg
 cat >> confdefs.h <<EOF
 #define LYNX_CFG_FILE "$LYNX_CFG_FILE"
@@ -5262,14 +5296,23 @@ EOF
 
 echo "$ac_t""$LYNX_CFG_FILE" 1>&6
 
+echo $ac_n "checking for location of site specific options-file""... $ac_c" 1>&6
+echo "configure:5301: checking for location of site specific options-file" >&5
+LYNX_COMPILE_OPTS=$cf_libdir/lynx_help/lynx_site.txt
+cat >> confdefs.h <<EOF
+#define LYNX_COMPILE_OPTS "$LYNX_COMPILE_OPTS"
+EOF
+
+echo "$ac_t""$LYNX_COMPILE_OPTS" 1>&6
+
 
 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:5268: checking for ANSI C header files" >&5
+echo "configure:5311: checking for ANSI C header files" >&5
 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5273 "configure"
+#line 5316 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
@@ -5277,7 +5320,7 @@ else
 #include <float.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5281: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5324: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -5294,7 +5337,7 @@ rm -f conftest*
 if test $ac_cv_header_stdc = yes; then
   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 5298 "configure"
+#line 5341 "configure"
 #include "confdefs.h"
 #include <string.h>
 EOF
@@ -5312,7 +5355,7 @@ fi
 if test $ac_cv_header_stdc = yes; then
   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 5316 "configure"
+#line 5359 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 EOF
@@ -5333,7 +5376,7 @@ if test "$cross_compiling" = yes; then
   :
 else
   cat > conftest.$ac_ext <<EOF
-#line 5337 "configure"
+#line 5380 "configure"
 #include "confdefs.h"
 #include <ctype.h>
 #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
@@ -5344,7 +5387,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
 exit (0); }
 
 EOF
-if { (eval echo configure:5348: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:5391: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   :
 else
@@ -5368,12 +5411,12 @@ EOF
 fi
 
 echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6
-echo "configure:5372: checking whether time.h and sys/time.h may both be included" >&5
+echo "configure:5415: checking whether time.h and sys/time.h may both be included" >&5
 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5377 "configure"
+#line 5420 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/time.h>
@@ -5382,7 +5425,7 @@ int main() {
 struct tm *tp;
 ; return 0; }
 EOF
-if { (eval echo configure:5386: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5429: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_header_time=yes
 else
@@ -5407,12 +5450,12 @@ for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6
-echo "configure:5411: checking for $ac_hdr that defines DIR" >&5
+echo "configure:5454: checking for $ac_hdr that defines DIR" >&5
 if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5416 "configure"
+#line 5459 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <$ac_hdr>
@@ -5420,7 +5463,7 @@ int main() {
 DIR *dirp = 0;
 ; return 0; }
 EOF
-if { (eval echo configure:5424: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5467: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval "ac_cv_header_dirent_$ac_safe=yes"
 else
@@ -5445,7 +5488,7 @@ done
 # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
 if test $ac_header_dirent = dirent.h; then
 echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6
-echo "configure:5449: checking for opendir in -ldir" >&5
+echo "configure:5492: checking for opendir in -ldir" >&5
 ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5453,7 +5496,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldir  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5457 "configure"
+#line 5500 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5464,7 +5507,7 @@ int main() {
 opendir()
 ; return 0; }
 EOF
-if { (eval echo configure:5468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5511: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5486,7 +5529,7 @@ fi
 
 else
 echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6
-echo "configure:5490: checking for opendir in -lx" >&5
+echo "configure:5533: checking for opendir in -lx" >&5
 ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5494,7 +5537,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lx  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5498 "configure"
+#line 5541 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5505,7 +5548,7 @@ int main() {
 opendir()
 ; return 0; }
 EOF
-if { (eval echo configure:5509: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5552: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5544,17 +5587,17 @@ for ac_hdr in \
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:5548: checking for $ac_hdr" >&5
+echo "configure:5591: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5553 "configure"
+#line 5596 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5558: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5601: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -5582,13 +5625,13 @@ done
 
 
 echo $ac_n "checking termio.h and termios.h""... $ac_c" 1>&6
-echo "configure:5586: checking termio.h and termios.h" >&5
+echo "configure:5629: checking termio.h and termios.h" >&5
 if eval "test \"`echo '$''{'cf_cv_termio_and_termios'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cat > conftest.$ac_ext <<EOF
-#line 5592 "configure"
+#line 5635 "configure"
 #include "confdefs.h"
 
 #if HAVE_TERMIO_H
@@ -5601,7 +5644,7 @@ int main() {
 putchar (0x0a)
 ; return 0; }
 EOF
-if { (eval echo configure:5605: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5648: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_termio_and_termios=yes
 else
@@ -5624,17 +5667,17 @@ for ac_hdr in sys/wait.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:5628: checking for $ac_hdr" >&5
+echo "configure:5671: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5633 "configure"
+#line 5676 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5638: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5681: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -5671,17 +5714,17 @@ for ac_hdr in wait.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:5675: checking for $ac_hdr" >&5
+echo "configure:5718: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5680 "configure"
+#line 5723 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5685: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5728: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -5711,17 +5754,17 @@ for ac_hdr in waitstatus.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:5715: checking for $ac_hdr" >&5
+echo "configure:5758: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5720 "configure"
+#line 5763 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5725: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5768: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -5762,13 +5805,13 @@ fi
 
 
 echo $ac_n "checking for union wait""... $ac_c" 1>&6
-echo "configure:5766: checking for union wait" >&5
+echo "configure:5809: checking for union wait" >&5
 if eval "test \"`echo '$''{'cf_cv_type_unionwait'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 5772 "configure"
+#line 5815 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
@@ -5779,7 +5822,7 @@ int x;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:5783: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5826: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_type_unionwait=no
 	 echo compiles ok w/o union wait 1>&5
@@ -5790,7 +5833,7 @@ else
   rm -rf conftest*
   
 	cat > conftest.$ac_ext <<EOF
-#line 5794 "configure"
+#line 5837 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
@@ -5805,7 +5848,7 @@ union wait x;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:5809: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5852: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_type_unionwait=yes
 	 echo compiles ok with union wait and possibly macros too 1>&5
@@ -5832,20 +5875,20 @@ EOF
 if test $cf_cv_type_unionwait = yes; then
 
 	echo $ac_n "checking if union wait can be used as wait-arg""... $ac_c" 1>&6
-echo "configure:5836: checking if union wait can be used as wait-arg" >&5
+echo "configure:5879: checking if union wait can be used as wait-arg" >&5
 	if eval "test \"`echo '$''{'cf_cv_arg_union_wait'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 		cat > conftest.$ac_ext <<EOF
-#line 5842 "configure"
+#line 5885 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
 union wait x; wait(&x)
 ; return 0; }
 EOF
-if { (eval echo configure:5849: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5892: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_arg_union_wait=yes
 else
@@ -5865,20 +5908,20 @@ EOF
 
 
 	echo $ac_n "checking if union wait can be used as waitpid-arg""... $ac_c" 1>&6
-echo "configure:5869: checking if union wait can be used as waitpid-arg" >&5
+echo "configure:5912: checking if union wait can be used as waitpid-arg" >&5
 	if eval "test \"`echo '$''{'cf_cv_arg_union_waitpid'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 		cat > conftest.$ac_ext <<EOF
-#line 5875 "configure"
+#line 5918 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
 union wait x; waitpid(0, &x, 0)
 ; return 0; }
 EOF
-if { (eval echo configure:5882: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5925: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_arg_union_waitpid=yes
 else
@@ -5900,12 +5943,12 @@ EOF
 fi
 
 echo $ac_n "checking for uid_t in sys/types.h""... $ac_c" 1>&6
-echo "configure:5904: checking for uid_t in sys/types.h" >&5
+echo "configure:5947: checking for uid_t in sys/types.h" >&5
 if eval "test \"`echo '$''{'ac_cv_type_uid_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5909 "configure"
+#line 5952 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 EOF
@@ -5934,7 +5977,7 @@ EOF
 fi
 
 echo $ac_n "checking type of array argument to getgroups""... $ac_c" 1>&6
-echo "configure:5938: checking type of array argument to getgroups" >&5
+echo "configure:5981: checking type of array argument to getgroups" >&5
 if eval "test \"`echo '$''{'ac_cv_type_getgroups'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5942,7 +5985,7 @@ else
   ac_cv_type_getgroups=cross
 else
   cat > conftest.$ac_ext <<EOF
-#line 5946 "configure"
+#line 5989 "configure"
 #include "confdefs.h"
 
 /* Thanks to Mike Rendell for this test.  */
@@ -5967,7 +6010,7 @@ main()
 }
 
 EOF
-if { (eval echo configure:5971: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:6014: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
     ac_cv_type_getgroups=gid_t
 else
@@ -5981,7 +6024,7 @@ fi
 
 if test $ac_cv_type_getgroups = cross; then
         cat > conftest.$ac_ext <<EOF
-#line 5985 "configure"
+#line 6028 "configure"
 #include "confdefs.h"
 #include <unistd.h>
 EOF
@@ -6005,12 +6048,12 @@ EOF
 
 
 echo $ac_n "checking for pid_t""... $ac_c" 1>&6
-echo "configure:6009: checking for pid_t" >&5
+echo "configure:6052: checking for pid_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6014 "configure"
+#line 6057 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -6038,12 +6081,12 @@ EOF
 fi
 
 echo $ac_n "checking for uid_t in sys/types.h""... $ac_c" 1>&6
-echo "configure:6042: checking for uid_t in sys/types.h" >&5
+echo "configure:6085: checking for uid_t in sys/types.h" >&5
 if eval "test \"`echo '$''{'ac_cv_type_uid_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6047 "configure"
+#line 6090 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 EOF
@@ -6072,12 +6115,12 @@ EOF
 fi
 
 echo $ac_n "checking for mode_t""... $ac_c" 1>&6
-echo "configure:6076: checking for mode_t" >&5
+echo "configure:6119: checking for mode_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_mode_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6081 "configure"
+#line 6124 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -6108,17 +6151,17 @@ fi
 
 ac_safe=`echo "vfork.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for vfork.h""... $ac_c" 1>&6
-echo "configure:6112: checking for vfork.h" >&5
+echo "configure:6155: checking for vfork.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6117 "configure"
+#line 6160 "configure"
 #include "confdefs.h"
 #include <vfork.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:6122: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:6165: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -6143,18 +6186,18 @@ else
 fi
 
 echo $ac_n "checking for working vfork""... $ac_c" 1>&6
-echo "configure:6147: checking for working vfork" >&5
+echo "configure:6190: checking for working vfork" >&5
 if eval "test \"`echo '$''{'ac_cv_func_vfork_works'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   if test "$cross_compiling" = yes; then
   echo $ac_n "checking for vfork""... $ac_c" 1>&6
-echo "configure:6153: checking for vfork" >&5
+echo "configure:6196: checking for vfork" >&5
 if eval "test \"`echo '$''{'ac_cv_func_vfork'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6158 "configure"
+#line 6201 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char vfork(); below.  */
@@ -6177,7 +6220,7 @@ vfork();
 
 ; return 0; }
 EOF
-if { (eval echo configure:6181: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6224: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_vfork=yes"
 else
@@ -6198,7 +6241,7 @@ fi
 
 else
   cat > conftest.$ac_ext <<EOF
-#line 6202 "configure"
+#line 6245 "configure"
 #include "confdefs.h"
 /* Thanks to Paul Eggert for this test.  */
 #include <stdio.h>
@@ -6293,7 +6336,7 @@ main() {
   }
 }
 EOF
-if { (eval echo configure:6297: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:6340: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   ac_cv_func_vfork_works=yes
 else
@@ -6317,13 +6360,13 @@ fi
 
 
 echo $ac_n "checking if we should use fcntl or ioctl""... $ac_c" 1>&6
-echo "configure:6321: checking if we should use fcntl or ioctl" >&5
+echo "configure:6364: checking if we should use fcntl or ioctl" >&5
 if eval "test \"`echo '$''{'cf_cv_fionbio'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 6327 "configure"
+#line 6370 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -6335,7 +6378,7 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:6339: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6382: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_fionbio=ioctl
 else
@@ -6344,7 +6387,7 @@ else
   rm -rf conftest*
   
 cat > conftest.$ac_ext <<EOF
-#line 6348 "configure"
+#line 6391 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -6361,7 +6404,7 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:6365: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6408: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_fionbio=fcntl
 else
@@ -6384,20 +6427,20 @@ EOF
 
 
 echo $ac_n "checking for broken/missing definition of remove""... $ac_c" 1>&6
-echo "configure:6388: checking for broken/missing definition of remove" >&5
+echo "configure:6431: checking for broken/missing definition of remove" >&5
 if eval "test \"`echo '$''{'cf_cv_baddef_remove'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 6394 "configure"
+#line 6437 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 int main() {
 remove("dummy")
 ; return 0; }
 EOF
-if { (eval echo configure:6401: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6444: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_baddef_remove=no
 else
@@ -6405,7 +6448,7 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 6409 "configure"
+#line 6452 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 		int __unlink(name) { return unlink(name); } 
@@ -6413,7 +6456,7 @@ int main() {
 remove("dummy")
 ; return 0; }
 EOF
-if { (eval echo configure:6417: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6460: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_baddef_remove=yes
 else
@@ -6437,13 +6480,13 @@ EOF
 
 
 echo $ac_n "checking for lstat""... $ac_c" 1>&6
-echo "configure:6441: checking for lstat" >&5
+echo "configure:6484: checking for lstat" >&5
 if eval "test \"`echo '$''{'ac_cv_func_lstat'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 6447 "configure"
+#line 6490 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -6452,7 +6495,7 @@ int main() {
 lstat(".", (struct stat *)0)
 ; return 0; }
 EOF
-if { (eval echo configure:6456: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6499: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   ac_cv_func_lstat=yes
 else
@@ -6484,12 +6527,12 @@ for ac_func in \
 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:6488: checking for $ac_func" >&5
+echo "configure:6531: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6493 "configure"
+#line 6536 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -6512,7 +6555,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:6516: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6559: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -6542,12 +6585,12 @@ for ac_func in \
 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:6546: checking for $ac_func" >&5
+echo "configure:6589: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6551 "configure"
+#line 6594 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -6570,7 +6613,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:6574: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6617: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -6601,12 +6644,12 @@ for ac_func in strstr
 do
 
 echo $ac_n "checking for $ac_func declaration""... $ac_c" 1>&6
-echo "configure:6605: checking for $ac_func declaration" >&5
+echo "configure:6648: checking for $ac_func declaration" >&5
 if eval "test \"`echo '$''{'ac_cv_func_decl_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6610 "configure"
+#line 6653 "configure"
 #include "confdefs.h"
 #include <string.h>
 int main() {
@@ -6615,11 +6658,11 @@ extern	int	${ac_func}();
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:6619: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6662: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 cat > conftest.$ac_ext <<EOF
-#line 6623 "configure"
+#line 6666 "configure"
 #include "confdefs.h"
 #include <string.h>
 int main() {
@@ -6628,7 +6671,7 @@ int	(*p)() = ${ac_func};
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:6632: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6675: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 eval "ac_cv_func_decl_$ac_func=yes"
@@ -6670,12 +6713,12 @@ for ac_func in getgrgid getgrnam
 do
 
 echo $ac_n "checking for $ac_func declaration""... $ac_c" 1>&6
-echo "configure:6674: checking for $ac_func declaration" >&5
+echo "configure:6717: checking for $ac_func declaration" >&5
 if eval "test \"`echo '$''{'ac_cv_func_decl_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6679 "configure"
+#line 6722 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -6686,11 +6729,11 @@ extern	int	${ac_func}();
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:6690: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6733: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 cat > conftest.$ac_ext <<EOF
-#line 6694 "configure"
+#line 6737 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -6701,7 +6744,7 @@ int	(*p)() = ${ac_func};
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:6705: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6748: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 eval "ac_cv_func_decl_$ac_func=yes"
@@ -6743,13 +6786,13 @@ done
 
 
 echo $ac_n "checking if TRUE/FALSE are defined""... $ac_c" 1>&6
-echo "configure:6747: checking if TRUE/FALSE are defined" >&5
+echo "configure:6790: checking if TRUE/FALSE are defined" >&5
 if eval "test \"`echo '$''{'cf_cv_bool_defs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 6753 "configure"
+#line 6796 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -6758,7 +6801,7 @@ int main() {
 int x = TRUE, y = FALSE
 ; return 0; }
 EOF
-if { (eval echo configure:6762: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6805: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_bool_defs=yes
 else
@@ -6785,13 +6828,13 @@ fi
 
 
 echo $ac_n "checking declaration of errno""... $ac_c" 1>&6
-echo "configure:6789: checking declaration of errno" >&5
+echo "configure:6832: checking declaration of errno" >&5
 if eval "test \"`echo '$''{'cf_cv_dcl_errno'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cat > conftest.$ac_ext <<EOF
-#line 6795 "configure"
+#line 6838 "configure"
 #include "confdefs.h"
 
 #if HAVE_STDLIB_H
@@ -6804,7 +6847,7 @@ int main() {
 long x = (long) errno
 ; return 0; }
 EOF
-if { (eval echo configure:6808: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6851: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval 'cf_cv_dcl_'errno'=yes'
 else
@@ -6834,9 +6877,9 @@ cf_result=`echo $cf_result | tr '[a-z]' '[A-Z]'`
 EOF
 
     echo $ac_n "checking existence of errno""... $ac_c" 1>&6
-echo "configure:6838: checking existence of errno" >&5
+echo "configure:6881: checking existence of errno" >&5
         cat > conftest.$ac_ext <<EOF
-#line 6840 "configure"
+#line 6883 "configure"
 #include "confdefs.h"
 
 #undef errno
@@ -6846,7 +6889,7 @@ int main() {
 errno = 2
 ; return 0; }
 EOF
-if { (eval echo configure:6850: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6893: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval 'cf_cv_have_'errno'=yes'
 else
@@ -6876,20 +6919,20 @@ EOF
 
 
 echo $ac_n "checking for setlocale()""... $ac_c" 1>&6
-echo "configure:6880: checking for setlocale()" >&5
+echo "configure:6923: checking for setlocale()" >&5
 if eval "test \"`echo '$''{'cf_cv_locale'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 6886 "configure"
+#line 6929 "configure"
 #include "confdefs.h"
 #include <locale.h>
 int main() {
 setlocale(LC_ALL, "")
 ; return 0; }
 EOF
-if { (eval echo configure:6893: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6936: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_locale=yes
 else
@@ -6910,13 +6953,13 @@ EOF
 
 
 echo $ac_n "checking if NGROUPS is defined""... $ac_c" 1>&6
-echo "configure:6914: checking if NGROUPS is defined" >&5
+echo "configure:6957: checking if NGROUPS is defined" >&5
 if eval "test \"`echo '$''{'cf_cv_ngroups'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 6920 "configure"
+#line 6963 "configure"
 #include "confdefs.h"
 
 #if HAVE_SYS_PARAM_H
@@ -6930,7 +6973,7 @@ int main() {
 int x = NGROUPS
 ; return 0; }
 EOF
-if { (eval echo configure:6934: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6977: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ngroups=yes
 else
@@ -6938,7 +6981,7 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 6942 "configure"
+#line 6985 "configure"
 #include "confdefs.h"
 
 #if HAVE_SYS_PARAM_H
@@ -6952,7 +6995,7 @@ int main() {
 int x = NGROUPS_MAX
 ; return 0; }
 EOF
-if { (eval echo configure:6956: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6999: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ngroups=NGROUPS_MAX
 else
@@ -6986,13 +7029,13 @@ for cf_name in sys_nerr sys_errlist
 do
     
 echo $ac_n "checking declaration of $cf_name""... $ac_c" 1>&6
-echo "configure:6990: checking declaration of $cf_name" >&5
+echo "configure:7033: checking declaration of $cf_name" >&5
 if eval "test \"`echo '$''{'cf_cv_dcl_$cf_name'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cat > conftest.$ac_ext <<EOF
-#line 6996 "configure"
+#line 7039 "configure"
 #include "confdefs.h"
 
 #if HAVE_STDLIB_H
@@ -7005,7 +7048,7 @@ int main() {
 long x = (long) $cf_name
 ; return 0; }
 EOF
-if { (eval echo configure:7009: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7052: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval 'cf_cv_dcl_'$cf_name'=yes'
 else
@@ -7035,9 +7078,9 @@ cf_result=`echo $cf_result | tr '[a-z]' '[A-Z]'`
 EOF
 
     echo $ac_n "checking existence of $cf_name""... $ac_c" 1>&6
-echo "configure:7039: checking existence of $cf_name" >&5
+echo "configure:7082: checking existence of $cf_name" >&5
         cat > conftest.$ac_ext <<EOF
-#line 7041 "configure"
+#line 7084 "configure"
 #include "confdefs.h"
 
 #undef $cf_name
@@ -7047,7 +7090,7 @@ int main() {
 $cf_name = 2
 ; return 0; }
 EOF
-if { (eval echo configure:7051: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7094: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval 'cf_cv_have_'$cf_name'=yes'
 else
@@ -7078,13 +7121,13 @@ done
 
 
 echo $ac_n "checking if struct utmp is declared""... $ac_c" 1>&6
-echo "configure:7082: checking if struct utmp is declared" >&5
+echo "configure:7125: checking if struct utmp is declared" >&5
 if eval "test \"`echo '$''{'cf_cv_have_utmp'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 7088 "configure"
+#line 7131 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -7093,7 +7136,7 @@ int main() {
 struct utmp x; char *y = &x.ut_host[0]
 ; return 0; }
 EOF
-if { (eval echo configure:7097: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7140: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_have_utmp=yes
 else
@@ -7101,14 +7144,14 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 7105 "configure"
+#line 7148 "configure"
 #include "confdefs.h"
 #include <utmpx.h>
 int main() {
 struct utmpx x; char *y = &x.ut_host[0]
 ; return 0; }
 EOF
-if { (eval echo configure:7112: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7155: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_have_utmp=utmpx
 else
@@ -7139,7 +7182,7 @@ EOF
 if test $cf_cv_screen != slang ; then
 	
 echo $ac_n "checking if curses supports alternate-character set""... $ac_c" 1>&6
-echo "configure:7143: checking if curses supports alternate-character set" >&5
+echo "configure:7186: checking if curses supports alternate-character set" >&5
 if eval "test \"`echo '$''{'cf_cv_alt_char_set'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7147,7 +7190,7 @@ else
 for mapname in acs_map _acs_map
 do
 	cat > conftest.$ac_ext <<EOF
-#line 7151 "configure"
+#line 7194 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -7156,7 +7199,7 @@ int main() {
 chtype x = $mapname['l']; $mapname['m'] = 0
 ; return 0; }
 EOF
-if { (eval echo configure:7160: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7203: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_alt_char_set=$mapname
 	 break
@@ -7179,13 +7222,13 @@ EOF
 
 	
 echo $ac_n "checking if curses supports fancy attributes""... $ac_c" 1>&6
-echo "configure:7183: checking if curses supports fancy attributes" >&5
+echo "configure:7226: checking if curses supports fancy attributes" >&5
 if eval "test \"`echo '$''{'cf_cv_fancy_curses'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 7189 "configure"
+#line 7232 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -7198,7 +7241,7 @@ attrset(A_UNDERLINE|A_BOLD|A_REVERSE);
 	
 ; return 0; }
 EOF
-if { (eval echo configure:7202: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7245: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_fancy_curses=yes
 else
@@ -7218,7 +7261,7 @@ EOF
 
 
 	echo $ac_n "checking for ncurses version""... $ac_c" 1>&6
-echo "configure:7222: checking for ncurses version" >&5
+echo "configure:7265: checking for ncurses version" >&5
 if eval "test \"`echo '$''{'cf_cv_ncurses_version'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7243,7 +7286,7 @@ Autoconf "old"
 #endif
 EOF
 	cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
-	{ (eval echo configure:7247: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
+	{ (eval echo configure:7290: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
 	if test -f conftest.out ; then
 		cf_out=`cat conftest.out | sed -e 's@^Autoconf @@' -e 's@^[^"]*"@@' -e 's@".*@@'`
 		test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
@@ -7252,7 +7295,7 @@ EOF
 
 else
   cat > conftest.$ac_ext <<EOF
-#line 7256 "configure"
+#line 7299 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -7275,7 +7318,7 @@ int main()
 	exit(0);
 }
 EOF
-if { (eval echo configure:7279: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:7322: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   
 	cf_cv_ncurses_version=`cat $cf_tempfile`
@@ -7295,13 +7338,13 @@ echo "$ac_t""$cf_cv_ncurses_version" 1>&6
 
 if test "$cf_cv_ncurses_version" != no ; then
 echo $ac_n "checking for obsolete/broken version of ncurses""... $ac_c" 1>&6
-echo "configure:7299: checking for obsolete/broken version of ncurses" >&5
+echo "configure:7342: checking for obsolete/broken version of ncurses" >&5
 if eval "test \"`echo '$''{'cf_cv_ncurses_broken'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 7305 "configure"
+#line 7348 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -7315,7 +7358,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:7319: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7362: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ncurses_broken=no
 else
@@ -7340,13 +7383,13 @@ fi
 
 	
 echo $ac_n "checking if curses supports color attributes""... $ac_c" 1>&6
-echo "configure:7344: checking if curses supports color attributes" >&5
+echo "configure:7387: checking if curses supports color attributes" >&5
 if eval "test \"`echo '$''{'cf_cv_color_curses'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 7350 "configure"
+#line 7393 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -7361,7 +7404,7 @@ chtype x = COLOR_BLUE;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:7365: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7408: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_color_curses=yes
 else
@@ -7388,7 +7431,7 @@ fi
 
 	
 echo $ac_n "checking declaration of size-change""... $ac_c" 1>&6
-echo "configure:7392: checking declaration of size-change" >&5
+echo "configure:7435: checking declaration of size-change" >&5
 if eval "test \"`echo '$''{'cf_cv_sizechange'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7402,7 +7445,7 @@ do
     CFLAGS="$cf_save_CFLAGS"
     test -n "$cf_opts" && CFLAGS="$CFLAGS -D$cf_opts"
     cat > conftest.$ac_ext <<EOF
-#line 7406 "configure"
+#line 7449 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if HAVE_TERMIOS_H
@@ -7441,7 +7484,7 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:7445: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7488: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_sizechange=yes
 else
@@ -7473,20 +7516,20 @@ EOF
 
 	
 echo $ac_n "checking if ttytype is declared in curses library""... $ac_c" 1>&6
-echo "configure:7477: checking if ttytype is declared in curses library" >&5
+echo "configure:7520: checking if ttytype is declared in curses library" >&5
 if eval "test \"`echo '$''{'cf_cv_have_ttytype'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 7483 "configure"
+#line 7526 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 char *x = &ttytype[1]; *x = 1
 ; return 0; }
 EOF
-if { (eval echo configure:7490: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7533: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_have_ttytype=yes
 else
@@ -7513,12 +7556,12 @@ EOF
 	
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:7517: checking for $ac_func" >&5
+echo "configure:7560: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7522 "configure"
+#line 7565 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -7541,7 +7584,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:7545: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7588: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -7571,7 +7614,7 @@ fi
 
 
 echo $ac_n "checking if experimental 8-bit case-conversion should be used""... $ac_c" 1>&6
-echo "configure:7575: checking if experimental 8-bit case-conversion should be used" >&5
+echo "configure:7618: checking if experimental 8-bit case-conversion should be used" >&5
 
 # Check whether --enable-8bit-toupper or --disable-8bit-toupper was given.
 if test "${enable_8bit_toupper+set}" = set; then
@@ -7595,7 +7638,7 @@ EOF
 
 
 echo $ac_n "checking if experimental forms-based options screen should be used""... $ac_c" 1>&6
-echo "configure:7599: checking if experimental forms-based options screen should be used" >&5
+echo "configure:7642: checking if experimental forms-based options screen should be used" >&5
 
 # Check whether --enable-forms-options or --disable-forms-options was given.
 if test "${enable_forms_options+set}" = set; then
@@ -7619,7 +7662,7 @@ EOF
 
 
 echo $ac_n "checking if experimental persistent-cookie logic should be used""... $ac_c" 1>&6
-echo "configure:7623: checking if experimental persistent-cookie logic should be used" >&5
+echo "configure:7666: checking if experimental persistent-cookie logic should be used" >&5
 
 # Check whether --enable-persistent-cookies or --disable-persistent-cookies was given.
 if test "${enable_persistent_cookies+set}" = set; then
@@ -7643,7 +7686,7 @@ EOF
 
 
 echo $ac_n "checking if color-style code should be used""... $ac_c" 1>&6
-echo "configure:7647: checking if color-style code should be used" >&5
+echo "configure:7690: checking if color-style code should be used" >&5
 
 # Check whether --enable-color-style or --disable-color-style was given.
 if test "${enable_color_style+set}" = set; then
@@ -7691,7 +7734,7 @@ EOF
 	echo "$ac_t""yes" 1>&6
 
 	echo $ac_n "checking for location of style-sheet file""... $ac_c" 1>&6
-echo "configure:7695: checking for location of style-sheet file" >&5
+echo "configure:7738: checking for location of style-sheet file" >&5
 	LYNX_LSS_FILE=$cf_libdir/lynx.lss
 	cat >> confdefs.h <<EOF
 #define LYNX_LSS_FILE "$LYNX_LSS_FILE"
@@ -7704,7 +7747,7 @@ esac
 
 
 echo $ac_n "checking if partial-display should be used""... $ac_c" 1>&6
-echo "configure:7708: checking if partial-display should be used" >&5
+echo "configure:7751: checking if partial-display should be used" >&5
 
 # Check whether --enable-partial or --disable-partial was given.
 if test "${enable_partial+set}" = set; then
@@ -7733,7 +7776,7 @@ test ".$ac_cv_func_use_default_colors" = ".yes" && use_dft_colors=maybe
 
 if test "$use_dft_colors" != no ; then
 echo $ac_n "checking if you want to use default-colors""... $ac_c" 1>&6
-echo "configure:7737: checking if you want to use default-colors" >&5
+echo "configure:7780: checking if you want to use default-colors" >&5
 
 # Check whether --enable-default-colors or --disable-default-colors was given.
 if test "${enable_default_colors+set}" = set; then
@@ -7758,7 +7801,7 @@ EOF
 fi
 
 echo $ac_n "checking if you want to use extended HTML DTD logic""... $ac_c" 1>&6
-echo "configure:7762: checking if you want to use extended HTML DTD logic" >&5
+echo "configure:7805: checking if you want to use extended HTML DTD logic" >&5
 
 # Check whether --enable-extended-dtd or --disable-extended-dtd was given.
 if test "${enable_extended_dtd+set}" = set; then
@@ -7782,7 +7825,7 @@ EOF
 
 
 echo $ac_n "checking if you want to use external commands""... $ac_c" 1>&6
-echo "configure:7786: checking if you want to use external commands" >&5
+echo "configure:7829: checking if you want to use external commands" >&5
 
 # Check whether --enable-externs or --disable-externs was given.
 if test "${enable_externs+set}" = set; then
@@ -7806,7 +7849,7 @@ EOF
 
 
 echo $ac_n "checking if you want to use setfont support""... $ac_c" 1>&6
-echo "configure:7810: checking if you want to use setfont support" >&5
+echo "configure:7853: checking if you want to use setfont support" >&5
 
 # Check whether --enable-font-switch or --disable-font-switch was given.
 if test "${enable_font_switch+set}" = set; then
@@ -7830,7 +7873,7 @@ EOF
 
 
 echo $ac_n "checking if you want cgi-link support""... $ac_c" 1>&6
-echo "configure:7834: checking if you want cgi-link support" >&5
+echo "configure:7877: checking if you want cgi-link support" >&5
 
 # Check whether --enable-cgi-links or --disable-cgi-links was given.
 if test "${enable_cgi_links+set}" = set; then
@@ -7849,7 +7892,7 @@ fi
 echo "$ac_t""$enableval" 1>&6
 
 echo $ac_n "checking if you want internal-links feature""... $ac_c" 1>&6
-echo "configure:7853: checking if you want internal-links feature" >&5
+echo "configure:7896: checking if you want internal-links feature" >&5
 
 # Check whether --enable-internal-links or --disable-internal-links was given.
 if test "${enable_internal_links+set}" = set; then
@@ -7873,7 +7916,7 @@ EOF
 
 
 echo $ac_n "checking if you want to fork NSL requests""... $ac_c" 1>&6
-echo "configure:7877: checking if you want to fork NSL requests" >&5
+echo "configure:7920: checking if you want to fork NSL requests" >&5
 
 # Check whether --enable-nsl-fork or --disable-nsl-fork was given.
 if test "${enable_nsl_fork+set}" = set; then
@@ -7897,7 +7940,7 @@ EOF
 
 
 echo $ac_n "checking if you want to log URL requests via syslog""... $ac_c" 1>&6
-echo "configure:7901: checking if you want to log URL requests via syslog" >&5
+echo "configure:7944: checking if you want to log URL requests via syslog" >&5
 
 # Check whether --enable-syslog or --disable-syslog was given.
 if test "${enable_syslog+set}" = set; then
@@ -7921,7 +7964,7 @@ EOF
 
 
 echo $ac_n "checking if you want to underline links""... $ac_c" 1>&6
-echo "configure:7925: checking if you want to underline links" >&5
+echo "configure:7968: checking if you want to underline links" >&5
 
 # Check whether --enable-underlines or --disable-underlines was given.
 if test "${enable_underlines+set}" = set; then
@@ -7944,8 +7987,37 @@ test $use_underline = yes && cat >> confdefs.h <<\EOF
 EOF
 
 
+echo $ac_n "checking if help files should be gzip'ed""... $ac_c" 1>&6
+echo "configure:7992: checking if help files should be gzip'ed" >&5
+
+# Check whether --enable-gzip-help or --disable-gzip-help was given.
+if test "${enable_gzip_help+set}" = set; then
+  enableval="$enable_gzip_help"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_gzip_help=$enableval 
+  else
+    use_gzip_help=no
+  fi
+else
+  enableval=no 
+  use_gzip_help=no
+  
+fi
+
+echo "$ac_t""$use_gzip_help" 1>&6
+
+COMPRESS_PROG=
+COMPRESS_EXT=
+if test $use_gzip_help = yes ; then
+	COMPRESS_PROG=$ac_cv_path_GZIP
+	COMPRESS_EXT=.gz
+fi
+
+
+
 echo $ac_n "checking if you want to use zlib for decompression of some gzip files""... $ac_c" 1>&6
-echo "configure:7949: checking if you want to use zlib for decompression of some gzip files" >&5
+echo "configure:8021: checking if you want to use zlib for decompression of some gzip files" >&5
 
 # Check whether --with-zlib or --without-zlib was given.
 if test "${with_zlib+set}" = set; then
@@ -7962,12 +8034,12 @@ if test ".$use_zlib" != ".no" ; then
 	cf_cv_have_lib_z=no
 	cf_libdir=""
 	echo $ac_n "checking for gzopen""... $ac_c" 1>&6
-echo "configure:7966: checking for gzopen" >&5
+echo "configure:8038: checking for gzopen" >&5
 if eval "test \"`echo '$''{'ac_cv_func_gzopen'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7971 "configure"
+#line 8043 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char gzopen(); below.  */
@@ -7990,7 +8062,7 @@ gzopen();
 
 ; return 0; }
 EOF
-if { (eval echo configure:7994: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:8066: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_gzopen=yes"
 else
@@ -8010,17 +8082,17 @@ else
 
 		cf_save_LIBS="$LIBS"
 		echo $ac_n "checking for gzopen in -lz""... $ac_c" 1>&6
-echo "configure:8014: checking for gzopen in -lz" >&5
+echo "configure:8086: checking for gzopen in -lz" >&5
 		LIBS="-lz $LIBS"
 		cat > conftest.$ac_ext <<EOF
-#line 8017 "configure"
+#line 8089 "configure"
 #include "confdefs.h"
 #include <zlib.h>
 int main() {
 gzopen("name","mode")
 ; return 0; }
 EOF
-if { (eval echo configure:8024: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:8096: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 cf_cv_have_lib_z=yes
@@ -8047,17 +8119,17 @@ test "$prefix" != /usr           && cf_search="$cf_search /usr/lib /usr/lib/z"
 			for cf_libdir in $cf_search
 			do
 				echo $ac_n "checking for -lz in $cf_libdir""... $ac_c" 1>&6
-echo "configure:8051: checking for -lz in $cf_libdir" >&5
+echo "configure:8123: checking for -lz in $cf_libdir" >&5
 				LIBS="-L$cf_libdir -lz $cf_save_LIBS"
 				cat > conftest.$ac_ext <<EOF
-#line 8054 "configure"
+#line 8126 "configure"
 #include "confdefs.h"
 #include <zlib.h>
 int main() {
 gzopen("name","mode")
 ; return 0; }
 EOF
-if { (eval echo configure:8061: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:8133: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 		 cf_cv_have_lib_z=yes
@@ -8098,7 +8170,7 @@ fi
 # All DirEd functions that were enabled on compilation can be disabled
 # or modified at run time via DIRED_MENU symbols in lynx.cfg.
 echo $ac_n "checking if directory-editor code should be used""... $ac_c" 1>&6
-echo "configure:8102: checking if directory-editor code should be used" >&5
+echo "configure:8174: checking if directory-editor code should be used" >&5
 
 # Check whether --enable-dired or --disable-dired was given.
 if test "${enable_dired+set}" = set; then
@@ -8124,7 +8196,7 @@ EOF
 
 
 	echo $ac_n "checking if you wish to allow extracting from archives via DirEd""... $ac_c" 1>&6
-echo "configure:8128: checking if you wish to allow extracting from archives via DirEd" >&5
+echo "configure:8200: checking if you wish to allow extracting from archives via DirEd" >&5
 	
 # Check whether --enable-dired-archive or --disable-dired-archive was given.
 if test "${enable_dired_archive+set}" = set; then
@@ -8143,7 +8215,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow users to redefine DirEd keys""... $ac_c" 1>&6
-echo "configure:8147: checking if you wish to allow users to redefine DirEd keys" >&5
+echo "configure:8219: checking if you wish to allow users to redefine DirEd keys" >&5
 	
 # Check whether --enable-dired-override or --disable-dired-override was given.
 if test "${enable_dired_override+set}" = set; then
@@ -8169,7 +8241,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow permissions commands via DirEd""... $ac_c" 1>&6
-echo "configure:8173: checking if you wish to allow permissions commands via DirEd" >&5
+echo "configure:8245: checking if you wish to allow permissions commands via DirEd" >&5
 	
 # Check whether --enable-dired-permit or --disable-dired-permit was given.
 if test "${enable_dired_permit+set}" = set; then
@@ -8195,7 +8267,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow executable-permission commands via DirEd""... $ac_c" 1>&6
-echo "configure:8199: checking if you wish to allow executable-permission commands via DirEd" >&5
+echo "configure:8271: checking if you wish to allow executable-permission commands via DirEd" >&5
 	
 # Check whether --enable-dired-xpermit or --disable-dired-xpermit was given.
 if test "${enable_dired_xpermit+set}" = set; then
@@ -8214,7 +8286,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow "tar" commands from DirEd""... $ac_c" 1>&6
-echo "configure:8218: checking if you wish to allow "tar" commands from DirEd" >&5
+echo "configure:8290: checking if you wish to allow "tar" commands from DirEd" >&5
 	
 # Check whether --enable-dired-tar or --disable-dired-tar was given.
 if test "${enable_dired_tar+set}" = set; then
@@ -8240,7 +8312,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow "uudecode" commands from DirEd""... $ac_c" 1>&6
-echo "configure:8244: checking if you wish to allow "uudecode" commands from DirEd" >&5
+echo "configure:8316: checking if you wish to allow "uudecode" commands from DirEd" >&5
 	
 # Check whether --enable-dired-uudecode or --disable-dired-uudecode was given.
 if test "${enable_dired_uudecode+set}" = set; then
@@ -8266,7 +8338,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow "zip" and "unzip" commands from DirEd""... $ac_c" 1>&6
-echo "configure:8270: checking if you wish to allow "zip" and "unzip" commands from DirEd" >&5
+echo "configure:8342: checking if you wish to allow "zip" and "unzip" commands from DirEd" >&5
 	
 # Check whether --enable-dired-zip or --disable-dired-zip was given.
 if test "${enable_dired_zip+set}" = set; then
@@ -8292,7 +8364,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow "gzip" and "gunzip" commands from DirEd""... $ac_c" 1>&6
-echo "configure:8296: checking if you wish to allow "gzip" and "gunzip" commands from DirEd" >&5
+echo "configure:8368: checking if you wish to allow "gzip" and "gunzip" commands from DirEd" >&5
 	
 # Check whether --enable-dired-gzip or --disable-dired-gzip was given.
 if test "${enable_dired_gzip+set}" = set; then
@@ -8319,7 +8391,7 @@ fi
 fi
 
 echo $ac_n "checking if you want long-directory listings""... $ac_c" 1>&6
-echo "configure:8323: checking if you want long-directory listings" >&5
+echo "configure:8395: checking if you want long-directory listings" >&5
 
 # Check whether --enable-long-list or --disable-long-list was given.
 if test "${enable_long_list+set}" = set; then
@@ -8345,7 +8417,7 @@ fi
 echo "$ac_t""$enableval" 1>&6
 
 echo $ac_n "checking if parent-directory references are permitted""... $ac_c" 1>&6
-echo "configure:8349: checking if parent-directory references are permitted" >&5
+echo "configure:8421: checking if parent-directory references are permitted" >&5
 
 # Check whether --enable-parent-dir-refs or --disable-parent-dir-refs was given.
 if test "${enable_parent_dir_refs+set}" = set; then
@@ -8523,6 +8595,7 @@ s%@make_include_left@%$make_include_left%g
 s%@make_include_right@%$make_include_right%g
 s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
 s%@INSTALL_DATA@%$INSTALL_DATA%g
+s%@AWK@%$AWK%g
 s%@LINT@%$LINT%g
 s%@ECHO_LD@%$ECHO_LD%g
 s%@RULE_CC@%$RULE_CC%g
@@ -8547,6 +8620,8 @@ s%@ZIP@%$ZIP%g
 s%@PROG_EXT@%$PROG_EXT%g
 s%@LIBOBJS@%$LIBOBJS%g
 s%@INSTALL_LSS@%$INSTALL_LSS%g
+s%@COMPRESS_PROG@%$COMPRESS_PROG%g
+s%@COMPRESS_EXT@%$COMPRESS_EXT%g
 s%@SRCDIR_CLEAN@%$SRCDIR_CLEAN%g
 
 CEOF
diff --git a/configure.in b/configure.in
index ac70f0e2..1348a472 100644
--- a/configure.in
+++ b/configure.in
@@ -22,6 +22,7 @@ AC_PROG_RANLIB
 AC_PROG_MAKE_SET
 CF_MAKE_INCLUDE
 AC_PROG_INSTALL
+AC_PROG_AWK
 AC_CHECK_PROGS(LINT, lint alint lclint tdlint, [])
 
 AC_AIX
@@ -158,7 +159,7 @@ PROG_EXT=
 TRY_CFLAGS=
 case $host_os in
 aix4*)
-	CFLAGS="$CFLAGS -DAIX4 -D_BSD=44 -D_AIX" 
+	CFLAGS="$CFLAGS -DAIX4 -D_BSD=44 -D_AIX"
 	LIBS="$LIBS -lbsd"
 	;;
 aix*)
@@ -168,7 +169,7 @@ apollo*)
 	TRY_CFLAGS="$TRY_CFLAGS -D_BUILTINS -W0,-opt,4"
 	;;
 bsdi*)
-	CFLAGS="$CFLAGS -DBSDI" 
+	CFLAGS="$CFLAGS -DBSDI"
 	;;
 clix*)
 	# Tested on CLIX 3.1 (T.Dickey).  The original makefile entry
@@ -180,10 +181,10 @@ convex*)
 	CFLAGS="$CFLAGS -D__STDC__ -Dunix"
 	;;
 dgux*)
-	CFLAGS="$CFLAGS -DDGUX" 
+	CFLAGS="$CFLAGS -DDGUX"
 	;;
 hpux*)
-	CFLAGS="$CFLAGS -DSNAKE" 
+	CFLAGS="$CFLAGS -DSNAKE"
 	;;
 isc*)
 	# -DPOSIX_JC is necessary, else LYBookmark.c never finds out what a mode_t is.
@@ -194,10 +195,10 @@ irix*)
 	# The original makefile used the $CFLAGS option -cckr for some form
 	# of K&R compatibility.  However, this causes compilation warnings for
 	# varargs on IRIX 5.2, and does not appear to be needed.
-	#removed: CFLAGS="$CFLAGS -cckr" 
+	#removed: CFLAGS="$CFLAGS -cckr"
 	;;
 linux*)
-	CFLAGS="$CFLAGS -DLINUX" 
+	CFLAGS="$CFLAGS -DLINUX"
 	;;
 next*)
 	CFLAGS="$CFLAGS -DNEXT -DXMOSAIC_HACK"
@@ -211,11 +212,11 @@ os2*)
 	LDFLAGS=`echo "$LDFLAGS -Zmt -Zcrtdll" | sed "s/-Zexe//g"`
 	PROG_EXT=".exe"
 	;;
-osf4*) 
-	# The -Olimit flag (see below) is no longer available with 
-	# Digital C 5.2, which is bundled with Digital UNIX 4.0. 
-	CFLAGS="$CFLAGS -DDSYS5" 
-	;; 
+osf4*)
+	# The -Olimit flag (see below) is no longer available with
+	# Digital C 5.2, which is bundled with Digital UNIX 4.0.
+	CFLAGS="$CFLAGS -DDSYS5"
+	;;
 osf*)
 	# Increase the maximum size of functions that will be optimized.
 	test -z "$GCC" && TRY_CFLAGS="$TRY_CFLAGS -O -Olimit 4000"
@@ -258,7 +259,7 @@ sunos4*)
 ultrix*)
 	# Increase the maximum size of functions that will be optimized.
 	test -z "$GCC" && TRY_CFLAGS="$TRY_CFLAGS -O -Olimit 600 -G 7"
-	CFLAGS="$CFLAGS -DULTRIX" 
+	CFLAGS="$CFLAGS -DULTRIX"
 	AC_CHECK_HEADERS(cursesX.h,
 		[AC_DEFINE(HAVE_CURSESX_H)
 		 cf_cv_ncurses_header=cursesX.h])
@@ -350,6 +351,11 @@ LYNX_CFG_FILE=$cf_libdir/lynx.cfg
 AC_DEFINE_UNQUOTED(LYNX_CFG_FILE,"$LYNX_CFG_FILE")
 AC_MSG_RESULT($LYNX_CFG_FILE)
 
+AC_MSG_CHECKING(for location of site specific options-file)
+LYNX_COMPILE_OPTS=$cf_libdir/lynx_help/lynx_site.txt
+AC_DEFINE_UNQUOTED(LYNX_COMPILE_OPTS,"$LYNX_COMPILE_OPTS")
+AC_MSG_RESULT($LYNX_COMPILE_OPTS)
+
 dnl --------------------------------------------------------------------------
 dnl Checks for standard headers
 dnl --------------------------------------------------------------------------
@@ -584,6 +590,22 @@ CF_ARG_ENABLE(underlines,
 AC_MSG_RESULT($use_underline)
 test $use_underline = yes && AC_DEFINE(UNDERLINE_LINKS)
 
+AC_MSG_CHECKING(if help files should be gzip'ed)
+CF_ARG_ENABLE(gzip-help,
+[  --enable-gzip-help      install gzip'ed help files],
+	[use_gzip_help=$enableval],
+	[use_gzip_help=no])
+AC_MSG_RESULT($use_gzip_help)
+
+COMPRESS_PROG=
+COMPRESS_EXT=
+if test $use_gzip_help = yes ; then
+	COMPRESS_PROG=$ac_cv_path_GZIP
+	COMPRESS_EXT=.gz
+fi
+AC_SUBST(COMPRESS_PROG)
+AC_SUBST(COMPRESS_EXT)
+
 AC_MSG_CHECKING(if you want to use zlib for decompression of some gzip files)
 AC_ARG_WITH(zlib,
 [  --with-zlib             use zlib for decompression of some gzip files],
diff --git a/lynx.cfg b/lynx.cfg
index 9d51c0ea..a2e6e571 100644
--- a/lynx.cfg
+++ b/lynx.cfg
@@ -200,7 +200,7 @@ DEFAULT_INDEX_FILE:http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/MetaIndex.html
 # mode ON by default (but you get assume_charset=iso-8859-1 if you try raw mode
 # OFF after it).
 #
-# Note that "raw" does not mean that every byte will be passed to the screen. 
+# Note that "raw" does not mean that every byte will be passed to the screen.
 # HTML character entities may get expanded and translated, inappropriate
 # control characters filtered out, etc.  There is a "Transparent" pseudo
 # character set for more "rawness".
@@ -757,9 +757,9 @@ DEFAULT_INDEX_FILE:http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/MetaIndex.html
 
 # If COLLAPSE_BR_TAGS is set FALSE, Lynx will not collapse serial BR tags.
 # Note that the valid way to insert extra blank lines in HTML is via a PRE
-# If set TRUE, two or more concurrent BRs will be collapsed into a single 
-# blank line.  Note that the valid way to insert extra blank lines in HTML 
-# is via a PRE block with only newlines in the block. 
+# If set TRUE, two or more concurrent BRs will be collapsed into a single
+# blank line.  Note that the valid way to insert extra blank lines in HTML
+# is via a PRE block with only newlines in the block.
 #
 #COLLAPSE_BR_TAGS:TRUE
 
@@ -983,116 +983,79 @@ DEFAULT_INDEX_FILE:http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/MetaIndex.html
 # for the .mil domain as well as the .il domain.  If the entry is '.il' this
 # will not happen.
 
-# Printer definitions
-# any number of printers may be defined by using multiple
-# printer definition sets.  Printers may be any program
-# that could be useful to your users, they do not necessarily
-# have to print.
-#
-# the definition of a printer is of the form
-# PRINTER:<printer name>:<printer command>:<printer option>:<lines/page>
-#
-#    <printer name> is the name that the user will see.
-# <printer command> is the command line arguments for printing a file.
-#		    The %s will be replaced with the file being printed.
-#                   If a second %s is given the second %s will be replaced by
-#                   a suggested filename that is prettier than the tempfile
-#                   name given in the first %s.  This does not remove the first
-#                   %s from the command line in any manner.  If you need to
-#                   use only the second %s file name in your printer command,
-#                   then I suggest creating a script which will first copy the
-#                   first %s file name to the second %s file name, and then
-#                   executing your print command with the second %s file name.
-#  <printer option> specifies whether the printer should be disabled for
-#		    users without printing options.  The options are
-#		    TRUE or FALSE;
-#		    TRUE means the printer will always be ENABLED
-#			 regardless of printer or anonymous settings
-#		    FALSE means the printer will be DISABLED when
-#			  the -noprint option is on, or for anonymous
-#			  users which are not allowed to print
-#
-#  <lines/page>    is an optional parameter for indicating the number of
-#		   lines per page for the printer.  Defaults to 66.  Used
-#		   for computing the approximate number of pages and
-#		   generating a statusline query of whether to proceed if
-#		   the document is longer than 4 printer pages.  Uses the
-#		   current screen length for the computation when the
-#		   built in "print to screen" option is selected.
-#
-#  You must put the whole definition on one line.
-#
-#  If you must use a colon, precede it with a backslash!
-#
-#  If you have a very busy VMS print queue and Lynx deletes the temporary
-#  files before they have been queued, use the VMSPrint.com included in
-#  the distribution.
-#
-#    examples
+# PRINTER & DOWNLOADER DEFINITIONS:
+# Lynx has 4 pre-defined print options & 1 pre-defined download option,
+# which are called up on-screen when `p' or `d' are entered;
+# any number of options can be added by the user, as explained below.
+#
+# For `p' pre-defined options are: `Save to local file', `E-mail the file',
+# `Print to screen' and `Print to local printer attached to vt100'.
+# `Print to screen' allows file transfers in the absence of alternatives
+# and is often the only option allowed here for anonymous users;
+# the 3rd & 4th options are not pre-defined for DOS/WINDOWS versions of Lynx.
+# For `d' the pre-defined option is: `Download to local file'.
+#
+# To define your own print or download option use the following formats:
+# PRINTER:<name>:<command>:<option>:<lines/page>
+# DOWNLOADER:<name>:<command>:<option>
+#
+# <name>       is what you will see on the print/download screen.
+# <command>    is the command your system will execute:
+#              the 1st %s in the command will be replaced
+#              by the temporary filename used by Lynx;
+#              a 2nd %s will be replaced by a filename of your choice,
+#              for which Lynx will prompt, offering a suggestion;
+#              if the command format of your printer/downloader requires
+#              a different layout, you will need to use a script
+#              (see the last 2 download examples below).
+# <option>     TRUE : the printer/downloader will always be ENABLED,
+#              except that downloading is disabled when -validate is used;
+#              FALSE : both will be DISABLED for anonymous users
+#              and printing will be disabled when -noprint is used.
+# <lines/page> (printers: optional) the number of lines/page (default 66):
+#              used to compute the approximate output size
+#              and prompt if the document is > 4 printer pages;
+#              it uses current screen length for the computation
+#              when `Print to screen' is selected.
+#
+# You must put the whole definition on one line;
+# if you use a colon, precede it with a backslash.
+#
+# `Printer' can be any file-handling program you find useful,
+# even if it does not physically print anything.
+# Usually, downloading involves the use of (e.g.) Ckermit or ZModem
+# to transfer files to a user's local machine over a serial link,
+# but download options do not have to be download-protocol programs.
+#
+# Printer examples:
 #PRINTER:Computer Center printer:lpr -Pccprt %s:FALSE
 #PRINTER:Office printer:lpr -POffprt %s:TRUE
 #PRINTER:VMS printer:print /queue=cc$print %s:FALSE:58
+# If you have a very busy VMS print queue
+# and Lynx deletes the temporary files before they have been queued,
+# use the VMSPrint.com included in the distribution:
 #PRINTER:Busy VMS printer:@Lynx_Dir\:VMSPrint sys$print %s:FALSE:58
-#  Don't use the following printer on anonymous accounts since
-#  allowing shell input is very dangerous.
-#PRINTER:Specify your own print command:echo -n "Enter a print command\: "; read word; sh -c "$word %s":FALSE
-#  Pass to a sophisticated file viewer (sources for most are available in
-#  ftp://space.mit.edu/pub/davis/most).  The most -k switch suppresses the
-#  invocation of hexadecimal display mode if 8-bit or control characters
-#  are present.  The +s switch invokes secure mode.
+# To specify a print option at run-time:
+# NBB if you have ANONYMOUS users, DO NOT allow this option!
+#PRINTER:Specify at run-time:echo -n "Enter a print command\: "; read word; sh -c "$word %s":FALSE
+# To pass to a sophisticated file viewer: -k suppresses invocation
+# of hex display mode if 8-bit or control characters are present;
+# +s invokes secure mode (see ftp://space.mit.edu/pub/davis/most):
 #PRINTER:Use Most to view:most -k +s %s:TRUE:23
-
-# Downloader definitions
-# any number of downloaders may be defined by using multiple
-# downloader definition sets.  Downloaders may be any program
-# that could be useful to your users, they do not necessarily
-# have to be a download protocol program. The most common use
-# of a downloader is to use Ckermit or some other transfer
-# program so that the user may easily transfer files back to
-# their local machine over a serial link.
-#
-# the definition of a downloader is of the form
-# DOWNLOADER:<downloadername>:<downloader command>:<downloader option>
-#
-#    <downloader name> is the name that the user will see.
-# <downloader command> is the command line arguments for downloading a file.
-#                      The %s will be replaced with the file being downloaded.
-#                      If a second %s is given the second %s will be replaced
-#                      by a suggested filename that is nicer than the tempfile
-#                      name given in the first %s.  This does not replace the
-#                      first %s in the command line.  If your command needs
-#                      the suggest file name on the command line only, then
-#                      I suggest creating a script that will first copy the
-#                      first %s file name to the second %s file name, and then
-#                      execute the downloading command using the second %s file
-#                      name (e.g., 'sz' needs such a script interposed).
-#  <downloader option> specifies whether the downloader should be disabled for
-#                      anonymous users.  The options are
-#                      TRUE or FALSE;
-#                      TRUE means the downloader will always be ENABLED
-#                           regardless of the anonymous settings (however,
-#			    all downloading is disabled by -validate).
-#                      FALSE means the downloader will be DISABLED when
-#                            the user is anonymous.
-#
-#  You must put the whole definition on one line.
 #
-#  If you must use a colon, precede it with a backslash!
-#
-#    examples
+# Downloader examples:
+# in Kermit, -s %s is the filename sent, -a %s the filename on arrival
+# (if they are given in reverse order here, the command will fail):
+#DOWNLOADER:Use Kermit to download to the terminal:kermit -i -s %s -a %s:TRUE
+# NB don't use -k with Most, so that binaries will invoke hexadecimal mode:
 #DOWNLOADER:Use Most to view:most +s %s:TRUE
-#  (don't use most's -k switch, so that binaries will invoke hexadecimal mode)
-#DOWNLOADER:Use Kermit to download to the local terminal:kermit -i -s %s -a %s:TRUE
+# The following example gives wrong filenames
+# (`sz' doesn't support a suggested filename parameter):
 #DOWNLOADER:Use Zmodem to download to the local terminal:sz %s:TRUE
+# The following example returns correct filenames
+# by using a script to make a subdirectory in /tmp,
+# but may conflict with very strong security or permissions restrictions:
 #DOWNLOADER:Use Zmodem to download to the local terminal:set %s %s;td=/tmp/Lsz$$;mkdir $td;ln -s $1 $td/"$2";sz $td/"$2";rm -r $td:TRUE
-#
-# Note for Zmodem: The first variant gives wrong filenames ("sz" doesn't support
-# a suggested filename parameter, sorry). The second returns correct filenames
-# but may conflict with very strong security or permissions restrictions
-# (it uses the script to make a subdirectory in /tmp, see below).
-#    (example script in lieu of :sz %s: for offering a suggested filename)
-#  :set %s %s;td=/tmp/Lsz$$;mkdir $td;ln -s $1 $td/"$2";sz $td/"$2";rm -r $td:
-#
 
 # Unix ONLY:
 #===========
diff --git a/lynx_help/Lynx_users_guide.html b/lynx_help/Lynx_users_guide.html
index 95c3aa45..43f4163e 100644
--- a/lynx_help/Lynx_users_guide.html
+++ b/lynx_help/Lynx_users_guide.html
@@ -302,32 +302,33 @@ if it is needed again. [<A HREF="#TOC">ToC</A>]
 <h2><A NAME="7"
 ><em>Printing, Mailing, and Saving rendered files to disk.</em></A></h2>
 
-Rendered HTML documents, and plain text files, may be printed using the
-'<em>p</em>' command while viewing the document.  After pressing the
-'<em>p</em>' key a menu of <em>Print Options</em> will be displayed.  The
-menu will vary according to several factors.  First, some sites set up
-special accounts to let users run Lynx to access local information systems.
-Typically these accounts require no passwords and do not require users to
-identify themselves.  As a result such accounts are called "anonymous"
-accounts, and their users are considered "anonymous" users.  In most
-configurations, all Lynx users (including anonymous users) are able to
-mail files to themselves and print the entire file to the screen.
-
-<p>Additional print options are available for users who are using
-Lynx from their own accounts (that is, so-called "non-anonymous
-users").  In particular, the <em>Save to a local file</EM>
-option allows you to save the document into a file on your disk
-space.	Any number of additional print options may also be
-available as configured by your system administrator.
-
-<p>Some options, such as <em>Save to a local file</em>, involve prompting
-for an output filename.  All output filename entries are saved in a
-circular buffer, and any previous entries can be retrieved for re-use by
-pressing the <em>up-arrow</em> or <em>down-arrow</em> keys at the prompt.
-
-<p>Note that if you want exact copies of text files without any expansions
-of TAB characters to spaces you should use the <a href="#9">Download</a>
-options. [<A HREF="#TOC">ToC</A>]
+To print, mail or save the document you have on-screen, enter '<em>p</em>',
+which displays a menu of <em>Print Options</em>, including 4 pre-defined:
+`Save to local file', `E-mail the file', `Print to screen'
+and `Print to local printer attached to vt100'.
+<p>
+`Print to screen' allows file transfers in the absence of alternatives
+and is often the only option allowed here for anonymous users;
+`Print to local printer' prefixes the `Print to screen' routine
+with the VT100 standard `printer on' escape sequence and appends to it
+the escape sequences for `form feed' and `printer off';
+the 3rd & 4th options are not pre-defined for DOS/WINDOWS ports.
+<p>
+In most configurations, all Lynx users (including anonymous users)
+can mail files to themselves and print the entire file to the screen;
+users with named accounts (or individuals using Lynx on a personal computer)
+can also save documents to files in their disk space;
+if you have access to lynx.cfg, you can define your own options:
+see the detailed advice in lynx.cfg.
+<p>
+Some options prompt for an output filename.  These are saved
+in a circular buffer, and any previous entries can be retrieved
+for re-use by pressing the <em>up-arrow</em> or <em>down-arrow</em> keys
+at the prompt.
+<p>
+NB if you want exact copies of text files without expansion of TABs
+to spaces you should use the <a href="#9">Download</a> options.
+[<A HREF="#TOC">ToC</A>]
 
 <h2><A NAME="8"
 ><em>Viewing the HTML document source and editing documents</em></A></h2>
@@ -421,9 +422,9 @@ local to Lynx.
 <p>Some documents are designated <em>index documents</em> by virtue of an
 ISINDEX element in their HEAD section.	These documents can be used to
 retrieve additional information based on searches using words or phrases
-submitted to an index server.  The Lynx statusline will indicate that you
+submitted to an index server.  The Lynx status line will indicate that you
 are viewing such a document, and if so, the '<em>s</em>' key will invoke a
-statusline prompt to enter a query string.  The prompt can be specified via
+status line prompt to enter a query string.  The prompt can be specified via
 a PROMPT attribute in the ISINDEX element.  Otherwise, Lynx will use an
 internally configured prompt.  The address for submitting the search can be
 specified via an HREF or ACTION attribute.  Otherwise, Lynx will use the
@@ -1101,7 +1102,7 @@ commands.
    <dt><em>^T</em>
 	<dd><em>Control-T</em> toggles Lynx trace mode on and off.  This is
 	    useful for diagnosing bad html.  If you get a <em>Bad HTML</em>
-	    statusline message when loading a document, enter
+	    status line message when loading a document, enter
 	    <em>Control-T</em> and then <em>Control-R</em> to reload the
 	    document in trace mode.  You also can submit the document for
 	    validation via links in the online help menu.  If you are able
@@ -1143,7 +1144,7 @@ commands.
    <dt><em>]</em>
 	<dd>The '<em>]</em>' command is used to send HEAD requests for the
 	    current document or link.  It applies only to documents or links
-	    (or form submit buttons) of http servers.  A statusline message
+	    (or form submit buttons) of http servers.  A status line message
 	    will notify you if the context for this command was inappropriate.
 	    The HEAD requests always are sent to the http server, i.e., Lynx
 	    does not retrieve any previous server replies from its cache.
@@ -1155,10 +1156,10 @@ commands.
 	    href="keystrokes/cookie_help.html">Cookie Jar Page</a>
 	    if it contains cookies.
    <dt><em>z</em>
-	<dd>Lynx supports completely interruptible I/O processes. Press the
-	    '<em>z</em>' key at any time during a connect or transfer process
-	    and the process will be halted.  If any data was transferred
-	    before the interrupt, it will be displayed.
+	<dd>To interrupt a connect or transfer request, enter '<em>z</em>':
+	    any data transferred before the interrupt will be displayed;
+	    to allow interruption of the look-up phase with '<em>z</em>'
+	    Lynx must be configured with --enable-nsl-fork when compiled.
    <dt><em>numbers</em>
 	<dd>Lynx offers other, advanced navigation features when numbers
 	    are used to invoke the <a
@@ -2032,7 +2033,7 @@ where
 	     <dt><code>-nolog</code>
 		<dd>disable mailing of error messages to document owners.
 	     <dt><code>-nopause</code>
-		<dd>disable forced pauses for statusline messages.
+		<dd>disable forced pauses for status line messages.
 	     <dt><code>-noprint</code>
 		<dd>disable print functions.
 	     <dt><code>-noredir</code>
diff --git a/lynx_help/help_files.txt b/lynx_help/help_files.txt
new file mode 100644
index 00000000..35b62d53
--- /dev/null
+++ b/lynx_help/help_files.txt
@@ -0,0 +1,53 @@
+# Format:
+#	KEYWORD=<filename>.html
+# No space is allowed.
+#
+# Usage:
+# 	... href="@KEYWORD@">whatever keyword says</a>
+# 	... href="@KEYWORD@#section>...</a>
+# 	... href="../@KEYWORD#section>...</a>
+#
+# Help files which are used in Lynx's help directory.
+# Each filename has to end with '.html' otherwise install-help will fail.
+#
+ABOUT_LYNX=about_lynx.html
+BOOKMARK_HELP=bookmark_help.html
+COOKIE_HELP=cookie_help.html
+DIRED_HELP=dired_help.html
+EDIT_HELP=edit_help.html
+FOLLOW_HELP=follow_help.html
+GOPHER_TYPES_HELP=gopher_types_help.html
+HISTORY_HELP=history_help.html
+KEYSTROKE_HELP=keystroke_help.html
+LYNX_HELP_MAIN=lynx_help_main.html
+LYNX_URL_SUPPORT=lynx_url_support.html
+LYNX_USERS_GUIDE=Lynx_users_guide.html
+MOVEMENT_HELP=movement_help.html
+OPTION_HELP=option_help.html
+OTHER_HELP=other_help.html
+PRINT_HELP=print_help.html
+SCROLLING_HELP=scrolling_help.html
+VISITED_HELP=visited_help.html
+XTERM_HELP=xterm_help.html
+LYNX_DEV=lynx-dev.html
+#
+# Frequently used or configurable links used in help files.
+# Each link has to contain 'http:' or 'ftp:' otherwise install-help will fail.
+#
+LYNX_DEV_ARCHIVE=http://www.flora.org/lynx-dev/html/
+LYNX_DIST=http://www.slcc.edu/lynx/current/index.html
+LYNX_FAQ=http://www.slcc.edu/lynx/faq.html
+LYNX_FAQ_AL=http://www.access.digex.net/~asgilman/lynx/FAQ/
+LYNX_HOME=http://lynx.browser.org/
+LYNX_SPEECH=http://leb.net/blinux/blynx/
+LYNX_SUBIR=http://www.crl.com/~subir/lynx.html
+WWW_NEWS=http://www.w3.org/hypertext/DataSources/News/Groups/Overview.html
+WWW_HTML2=http://www.w3.org/MarkUp/html-spec/html-spec_toc.html
+WWW_HTML3=http://www.w3.org/MarkUp/html3/Contents.html
+#
+# E-mail addresses used in help files.
+# Each e-mail address has to contain a '@' otherwise install-help will fail.
+#
+LYNX_DEV_MAIL=lynx-dev@sig.net
+LYNX_LIST_HOST=majordomo@sig.net
+LYNX_LIST_OWNER=majordomo-owner@sig.net
diff --git a/makefile.in b/makefile.in
index 2574257f..28e2ec13 100644
--- a/makefile.in
+++ b/makefile.in
@@ -16,6 +16,8 @@ CFLAGS		= @CFLAGS@
 DEFS		= @DEFS@
 CPPFLAGS	= @CPPFLAGS@
 
+AWK		= @AWK@
+
 LIBS		= @LIBS@
 
 INSTALL		= @INSTALL@
@@ -44,6 +46,12 @@ helpdir= @libdir@/lynx_help
 ##do not set this to be an absolute path!!!
 WWWINC= WWW/Library/Implementation
 
+## Path to gzip that will compress the help files.
+## It will be used when --enable-gzip-help is set by configure.
+## Leave *both* empty if you don't want to gzip help files.
+COMPRESS_PROG=@COMPRESS_PROG@
+COMPRESS_EXT=@COMPRESS_EXT@
+
 # !!!!!!!!!!! SUN resolv LIBRARY !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 # To include resolv in the LIBS="" list for SUN 3, 4 or Solaris OS,
 # point RESOLVLIB to that library.  You need this if you get the message
@@ -141,7 +149,7 @@ SITE_DEFS = # Your defines here
 # for installation of local execution links, please see the file userdefs.h
 
 # TESTED: Linux FreeBSD SunOS Solaris IRIX CLIX HP-UX AIX SCO
-all lynx$x:
+all lynx$x: LYHelp.h
 	cd WWW/Library/unix && $(MAKE) CC="$(CC)" \
 		LY_CFLAGS="$(CFLAGS)" \
 		CPPFLAGS="$(CPPFLAGS)" \
@@ -170,9 +178,9 @@ clean:
 	rm -f WWW/Library/*/*.[aob]
 	rm -f WWW/Library/*/.created
 	cd src && $(MAKE) clean
-	rm -f *.b src/lynx$x core Lynx.leaks
+	rm -f *.b src/lynx$x core Lynx.leaks LYHelp.h
 
-depend:
+depend: LYHelp.h
 	cd WWW/Library/unix && $(MAKE) $@
 	cd src && $(MAKE) $@
 
@@ -218,7 +226,7 @@ save:
 compress: tar
 	cd ..; rm -f $(lynxname).tar.Z; compress -f -v $(lynxname).tar
 
-install: lynx$x install-bin install-man install-cfg @INSTALL_LSS@
+install: lynx$x install-bin install-man install-cfg @INSTALL_LSS@ install-log
 	@echo
 	@echo "Use $(MAKE) install-help to install the help-files"
 	@echo
@@ -232,10 +240,37 @@ install-man : $(mandir)
 
 install-help : $(helpdir)
 	(cd $(helpdir) && rm -rf *)
-	(cd $(srcdir)/lynx_help && tar cf - . ) | ( cd $(helpdir) && tar xf - )
+	@echo Constructing sed-script
+	@sed	-e '/^#/d' -e '/^$$/d' \
+		-e 's%\(.*\)=\(.*\@.*\)%s=@\1@=\2=%g' \
+		-e 's%\(.*\)=\(http:.*\)%s=@\1@=\2=%g' \
+		-e 's%\(.*\)=\(ftp:.*\)%s=@\1@=\2=%g' \
+		-e 's%\(.*\)=\(.*\.html\)$$%s=@\1@=\2$(COMPRESS_EXT)=%g' \
+		$(srcdir)/lynx_help/help_files.txt > \
+		$(helpdir)/help_files.sed
+	@echo Appending interim-fix for existing html files
+	@sed	-e '/^#/d' -e '/[:@]/d' -e '/^$$/d' \
+		-e 's%\(.*\)=\(.*\.html\)$$%s=\\<\2\\>=\2$(COMPRESS_EXT)=%g' \
+		$(srcdir)/lynx_help/help_files.txt >> \
+		$(helpdir)/help_files.sed
+	@echo Translating/copying html files
+	@sh -c	'cd $(srcdir)/lynx_help && ( \
+		dirs=`find . -type d -print` ; \
+		(cd $(helpdir) && mkdir $$dirs 2>/dev/null ) ; \
+		files=`find . -name \*.html -print` ; \
+		for f in $$files ; do \
+			sed -f $(helpdir)/help_files.sed $$f > $(helpdir)/$$f ; \
+		done ; \
+		if test "$(COMPRESS_PROG)" != "" ; then \
+			(cd $(helpdir) && $(COMPRESS_PROG) $$files ) \
+		fi ; \
+		)'
+	-rm -f $(helpdir)/help_files.sed
+	@echo Copying sample files
 	(cd $(srcdir) && tar cf - C[HO]* PROBLEMS README samples test ) | \
 			       ( cd $(helpdir) && tar xf - )
 	-rm -f $(libdir)/lynx.tmp
+	@echo Updating $(libdir)/lynx.cfg 
 	sh -c 'if test -f $(libdir)/lynx.cfg ; then \
 		mv $(libdir)/lynx.cfg $(libdir)/lynx.tmp ; \
 	else \
@@ -244,10 +279,33 @@ install-help : $(helpdir)
 	sed	-e '/^HELPFILE:http/s@^@#@' \
 		-e '/^#HELPFILE:file/s@#@@' \
 		-e '/^HELPFILE:file/s@/PATH_TO/lynx_help@$(helpdir)@' \
+		-e '/^HELPFILE:file/s@$$@$(COMPRESS_EXT)@' \
 		$(libdir)/lynx.tmp >$(libdir)/lynx.cfg
 	chmod 644 $(libdir)/lynx.cfg
 	-rm -f $(libdir)/lynx.tmp
 
+LYHelp.h : LYHelp.hin
+	@sed	-e '/^#/d' -e '/^$$/d' \
+		-e 's%\(.*\)=\(.*\@.*\)%s=@\1@=\2=%g' \
+		-e 's%\(.*\)=\(http:.*\)%s=@\1@=\2=%g' \
+		-e 's%\(.*\)=\(ftp:.*\)%s=@\1@=\2=%g' \
+		-e 's%\(.*\)=\(.*\.html\)$$%s=@\1@=\2$(COMPRESS_EXT)=%g' \
+		$(srcdir)/lynx_help/help_files.txt > \
+		help_files.sed
+	@sed -f help_files.sed $(srcdir)/LYHelp.hin > $@
+	-@rm -f help_files.sed
+	@echo '**********************************************'
+	@echo
+	@sh -c 'if test "$(COMPRESS_PROG)" = "" ; then \
+		echo "       Help files will NOT be gzipped."; \
+	else \
+		echo "       Help links point to compressed files"; \
+		echo "       To access them properly you have to type"; \
+		echo "                 make install-help"; \
+	fi'
+	@echo
+	@echo '**********************************************'
+
 install-cfg : $(libdir)
 	-mv -f $(libdir)/lynx.cfg $(libdir)/lynx.oldcfg
 	$(INSTALL_DATA) $(srcdir)/lynx.cfg $(libdir)/lynx.cfg
@@ -256,6 +314,12 @@ install-lss : $(libdir)
 	-mv -f $(libdir)/lynx.lss $(libdir)/lynx.oldlss
 	$(INSTALL_DATA) $(srcdir)/samples/lynx.lss $(libdir)/lynx.lss
 
+install-log : $(libdir) config.cache
+	-@sed	-e '/^#/d' \
+		-e 's/^.._cv_\(.*\)=.*=\(.*\)\}/\1=\2/g' \
+		config.cache | \
+	$(AWK) -F= '{printf "%-30s = %s\n",$$1,$$2}' |sort > $(libdir)/lynx_site.txt
+
 uninstall:
 	-rm -f $(bindir)/lynx$x
 	-rm -f $(mandir)/lynx.1
diff --git a/src/GridText.c b/src/GridText.c
index b818730b..49f65f08 100644
--- a/src/GridText.c
+++ b/src/GridText.c
@@ -525,6 +525,17 @@ PUBLIC HText *	HText_new ARGS1(
     underline_on = FALSE; /* reset */
     bold_on = FALSE;
 
+#ifdef DISP_PARTIAL
+    /*
+     * By this function we create HText object and set new Lines counter
+     * so we may start displaying the document while downloading. - LP
+     */
+    if (display_partial)
+         NumOfLines_partial = 0;  /* enable HTDisplayPartial() */
+#endif
+
+    CTRACE(tfp, "GridText: start HText_new\n");
+
     return self;
 }
 
@@ -779,7 +790,12 @@ PRIVATE int display_line ARGS2(
 	    case LY_BOLD_END_CHAR:
 		stop_bold ();
 		break;
+
 #endif
+	    case LY_SOFT_NEWLINE:
+		if (!dump_output_immediately)
+		    addch('+');
+		break;
 
 	    case LY_SOFT_HYPHEN:
 	        if (*data != '\0' ||
@@ -1082,7 +1098,7 @@ PRIVATE void display_page ARGS3(
 #else
 	assert(line->next != NULL);
 #endif /* !VMS */
-    }
+    } /* Loop */
 
     if (LYlowest_eightbit[current_char_set] <= 255 &&
 	(current_char_set != charset_last_displayed) &&
@@ -1312,7 +1328,7 @@ PRIVATE void display_page ARGS3(
 		 *  in it. - FM
 		 */
 		move((i + 2), 0);
-	    }
+	    } /* end while */
 #endif /* FANCY CURSES || USE_SLANG */
 
 	    /*
@@ -1331,8 +1347,8 @@ PRIVATE void display_page ARGS3(
 	    }
 	    display_flag = TRUE;
 	    line = line->next;
-	}
-    }
+	} /* end of "Verify and display each line." loop */
+    } /* end "Output the page." */
 
     text->next_line = line;	/* Line after screen */
     text->stale = NO;		/* Display is up-to-date */
@@ -1494,7 +1510,7 @@ PRIVATE void display_page ARGS3(
 	    CTRACE(tfp, "\ndisplay_page: MAXLINKS reached.\n");
 	    break;
 	}
-    }
+    } /* end of loop "Add the anchors to Lynx structures." */
 
     /*
      *  Free any un-reallocated links[] entries
@@ -2252,6 +2268,11 @@ PUBLIC void HText_appendCharacter ARGS2(
 	    bold_on = OFF;
 	    ctrl_chars_on_this_line++;
 	    return;
+	} else if (ch == LY_SOFT_NEWLINE) {
+	    line->data[line->size++] = LY_SOFT_NEWLINE;
+	    line->data[line->size] = '\0';
+	    ctrl_chars_on_this_line++;
+	    return;
 	} else if (ch == LY_SOFT_HYPHEN) {
 	    int i;
 
@@ -2405,11 +2426,12 @@ PUBLIC void HText_appendCharacter ARGS2(
 		HTisDocumentSource()) {
 	    int gap = line->data[line->size - 1];
 	    new_line(text);
+	    line = text->last_line;
+	    HText_appendCharacter (text, LY_SOFT_NEWLINE);
 	    HText_appendCharacter (text, gap);
 	}
     }
 
-
     if (ch == ' ') {
 	/*
 	 *  Can split here. - FM
@@ -2537,6 +2559,9 @@ check_IgnoreExcess:
 	     */
 	    text->permissible_split = text->last_line->size;
 	}
+	if (ch == LY_SOFT_NEWLINE) {
+	    ctrl_chars_on_this_line++;
+	}
     }
 }
 
@@ -2925,12 +2950,7 @@ PUBLIC void HText_endAnchor ARGS2(
 		    } else if (prev && prev->size > 1) {
 			k = (i + 1);
 			j = (prev->size - 1);
-			while ((j >= 0) &&
-			       (prev->data[j] == LY_BOLD_START_CHAR ||
-			        prev->data[j] == LY_BOLD_END_CHAR ||
-				prev->data[j] == LY_UNDERLINE_START_CHAR ||
-			        prev->data[j] == LY_UNDERLINE_END_CHAR ||
-				prev->data[j] == LY_SOFT_HYPHEN))
+		        while ((j >= 0) && IsSpecialAttrChar(prev->data[j]))
 			    j--;
 		        i = (j + 1);
 			while (j >= 0 &&
@@ -2990,12 +3010,7 @@ PUBLIC void HText_endAnchor ARGS2(
 		    }
 		} else if (prev && prev->size > 2) {
 		    j = (prev->size - 1);
-		    while ((j >= 0) &&
-			   (prev->data[j] == LY_BOLD_START_CHAR ||
-			    prev->data[j] == LY_BOLD_END_CHAR ||
-			    prev->data[j] == LY_UNDERLINE_START_CHAR ||
-			    prev->data[j] == LY_UNDERLINE_END_CHAR ||
-			    prev->data[j] == LY_SOFT_HYPHEN))
+		    while ((j >= 0) && IsSpecialAttrChar(prev->data[j]))
 		        j--;
 		    if (j < 0)
 		        j = 0;
@@ -3243,7 +3258,7 @@ re_parse:
 	if (anchor_ptr->extent < 0) {
 	    anchor_ptr->extent = 0;
 	}
-	CTRACE(tfp, "anchor text: '%s'   pos: %d\n",
+	CTRACE(tfp, "anchor text: '%s'   col: %d\n",
 			    line_ptr->data, anchor_ptr->line_pos);
 	/*
 	 *  If the link begins with an end of line and we have more
@@ -3257,8 +3272,7 @@ re_parse:
 	    goto re_parse;
 	}
 	cur_shift = 0;
-	CTRACE(tfp, "anchor text: '%s'   pos: %d\n",
-			    line_ptr->data, anchor_ptr->line_pos);
+
 	/*
 	 *  Copy the link name into the data structure.
 	 */
@@ -3321,7 +3335,7 @@ re_parse:
 	anchor_ptr->line_pos += line_ptr->offset;
 	anchor_ptr->line_num  = cur_line;
 
-	CTRACE(tfp, "GridText: adding link on line %d in HText_endAppend\n",
+	CTRACE(tfp, "GridText:     add link on line %d in HText_endAppend\n",
 		    cur_line);
 
 	/*
@@ -3971,8 +3985,17 @@ PUBLIC void HText_pageDisplay ARGS2(
 	int,		line_num,
 	char *,		target)
 {
+    CTRACE(tfp, "GridText: HText_pageDisplay at line %d started\n", line_num);
+
     display_page(HTMainText, line_num-1, target);
 
+    CTRACE(tfp, "GridText: HText_pageDisplay finished\n");
+
+#ifdef DISP_PARTIAL
+	if (display_partial && debug_display_partial)
+	sleep(MessageSecs);
+#endif
+
     is_www_index = HTAnchor_isIndex(HTMainAnchor);
 }
 
@@ -4615,6 +4638,7 @@ PUBLIC void print_wwwfile_to_fd ARGS2(
 	int,		is_reply)
 {
     register int i;
+    int first = TRUE;
     HTLine * line;
 #ifdef VMS
     extern BOOLEAN HadVMSInterrupt;
@@ -4625,6 +4649,12 @@ PUBLIC void print_wwwfile_to_fd ARGS2(
 
     line = HTMainText->last_line->next;
     for (;; line = line->next) {
+	if (!first
+	 && line->data[0] != LY_SOFT_NEWLINE
+	 && line->data[0] != '\0')
+	    fputc('\n',fp);
+	first = FALSE;
+
 	/*
 	 *  Add news-style quotation if requested. - FM
 	 */
@@ -4670,11 +4700,6 @@ PUBLIC void print_wwwfile_to_fd ARGS2(
 	    }
 	}
 
-	/*
-	 *  Add the return.
-	 */
-	fputc('\n',fp);
-
 	if (line == HTMainText->last_line)
 	    break;
 
@@ -4683,6 +4708,7 @@ PUBLIC void print_wwwfile_to_fd ARGS2(
 	    break;
 #endif /* VMS */
     }
+    fputc('\n',fp);
 
 }
 
@@ -4697,6 +4723,7 @@ PUBLIC void print_crawl_to_fd ARGS3(
 	char *,		thetitle)
 {
     register int i;
+    int first = TRUE;
     HTLine * line;
 #ifdef VMS
     extern BOOLEAN HadVMSInterrupt;
@@ -4712,6 +4739,11 @@ PUBLIC void print_crawl_to_fd ARGS3(
     }
 
     for (;; line = line->next) {
+	if (!first
+	 && line->data[0] != LY_SOFT_NEWLINE
+	 && line->data[0] != '\0')
+	    fputc('\n',fp);
+	first = FALSE;
 	/*
 	 *  Add offset.
 	 */
@@ -4740,15 +4772,11 @@ PUBLIC void print_crawl_to_fd ARGS3(
 	     }
 	}
 
-	/*
-	 *  Add the return.
-	 */
-	fputc('\n',fp);
-
 	if (line == HTMainText->last_line) {
 	    break;
 	}
     }
+    fputc('\n',fp);
 
     /*
      *  Add the References list if appropriate
diff --git a/src/GridText.h b/src/GridText.h
index daeabe6e..8465b99a 100644
--- a/src/GridText.h
+++ b/src/GridText.h
@@ -17,7 +17,8 @@
 #ifndef LY_SOFT_HYPHEN
 #define LY_SOFT_HYPHEN		((char)7)
 #endif /* !LY_SOFT_HYPHEN */
-#define IsSpecialAttrChar(a)  ((a > '\002') && (a < '\010'))
+#define LY_SOFT_NEWLINE         ((char)8)
+#define IsSpecialAttrChar(a)  ((a > '\002') && (a <= '\010'))
 
 extern int HTCurSelectGroupType;
 extern char * HTCurSelectGroupSize;
diff --git a/src/HTAlert.c b/src/HTAlert.c
index 7ef0d1ca..0482ca1e 100644
--- a/src/HTAlert.c
+++ b/src/HTAlert.c
@@ -27,14 +27,9 @@
 PUBLIC void HTAlert ARGS1(
 	CONST char *,	Msg)
 {
-    if (TRACE) {
-	fprintf(tfp, "\nAlert!: %s", Msg);
-	fflush(tfp);
-	_user_message("Alert!: %s", Msg);
-	fprintf(tfp, "\n\n");
-	fflush(tfp);
-    } else
-	_user_message("Alert!: %s", Msg);
+    CTRACE(tfp, "\nAlert!: %s\n\n", Msg);
+    CTRACE_FLUSH(tfp);
+    _user_message("Alert!: %s", Msg);
 
     sleep(AlertSecs);
 }
diff --git a/src/HTML.c b/src/HTML.c
index 66504e53..83f5127e 100644
--- a/src/HTML.c
+++ b/src/HTML.c
@@ -223,8 +223,12 @@ PUBLIC void HTML_put_character ARGS2(HTStructured *, me, char, c)
 	    return;
 	if (c != '\n' && c != '\t' && c != '\r')
 	    HTChunkPutc(&me->title, c);
-	else
-	    HTChunkPutc(&me->title, ' ');
+	else if (HTCJK == CHINESE || HTCJK == JAPANESE || HTCJK == TAIPEI)
+	    if (c == '\t')
+		HTChunkPutc(&me->title, ' ');
+	    else return;
+	    /* don't replace '\n' with ' ' if Chinese or Japanese - HN */
+	else HTChunkPutc(&me->title, ' ');
 	return;
 
     case HTML_STYLE:
@@ -336,13 +340,19 @@ PUBLIC void HTML_put_character ARGS2(HTStructured *, me, char, c)
 		UPDATE_STYLE;
 	    }
 	    if (c == '\n') {
-		if (me->in_word) {
-		    if (HText_getLastChar(me->text) != ' ') {
-			me->inP = TRUE;
-			me->inLABEL = FALSE;
-			HText_appendCharacter(me->text, ' ');
+		if (HTCJK == CHINESE || HTCJK == JAPANESE ||
+		    HTCJK == TAIPEI) {
+		    /* don't replace '\n' with ' ' if Chinese or Japanese - HN
+		     */
+		} else {
+		    if (me->in_word) {
+			if (HText_getLastChar(me->text) != ' ') {
+			    me->inP = TRUE;
+			    me->inLABEL = FALSE;
+			    HText_appendCharacter(me->text, ' ');
+			}
+			me->in_word = NO;
 		    }
-		    me->in_word = NO;
 		}
 
 	    } else if (c == ' ' || c == '\t') {
@@ -365,15 +375,15 @@ PUBLIC void HTML_put_character ARGS2(HTStructured *, me, char, c)
     } /* end second switch */
 
     if (c == '\n' || c == '\t') {
-	HText_setLastChar(me->text, ' '); /* set it to a generic seperater */
+	HText_setLastChar(me->text, ' '); /* set it to a generic separator */
 
 	/*
 	 *  \r's are ignored.  In order to keep collapsing spaces
 	 *  correctly we must default back to the previous
-	 *  seperater if there was one
+	 *  separator if there was one
 	 */
     } else if (c == '\r' && HText_getLastChar(me->text) == ' ') {
-	HText_setLastChar(me->text, ' '); /* set it to a generic seperater */
+	HText_setLastChar(me->text, ' '); /* set it to a generic separator */
     } else {
 	HText_setLastChar(me->text, c);
     }
@@ -471,10 +481,17 @@ PUBLIC void HTML_put_string ARGS2(HTStructured *, me, CONST char *, s)
 		    UPDATE_STYLE;
 		}
 		if (c == '\n') {
-		    if (me->in_word) {
-			if (HText_getLastChar(me->text) != ' ')
-			    HText_appendCharacter(me->text, ' ');
-			me->in_word = NO;
+		    if (HTCJK == CHINESE || HTCJK == JAPANESE ||
+			HTCJK == TAIPEI) {
+			/* don't replace '\n' with ' '
+			 * if Chinese or Japanese - HN
+			 */
+		    } else {
+			if (me->in_word) {
+			    if (HText_getLastChar(me->text) != ' ')
+				HText_appendCharacter(me->text, ' ');
+				me->in_word = NO;
+			}
 		    }
 
 		} else if (c == ' ' || c == '\t') {
@@ -490,15 +507,15 @@ PUBLIC void HTML_put_string ARGS2(HTStructured *, me, CONST char *, s)
 
 		/* set the Last Character */
 		if (c == '\n' || c == '\t') {
-		    /* set it to a generic seperater */
+		    /* set it to a generic separator */
 		    HText_setLastChar(me->text, ' ');
 		} else if (c == '\r' &&
 			   HText_getLastChar(me->text) == ' ') {
 		    /*
 		     *	\r's are ignored.  In order to keep collapsing
 		     *	spaces correctly, we must default back to the
-		     *	previous seperator, if there was one.  So we
-		     *	set LastChar to a generic seperater.
+		     *	previous separator, if there was one.  So we
+		     *	set LastChar to a generic separator.
 		     */
 		    HText_setLastChar(me->text, ' ');
 		} else {
@@ -1533,15 +1550,15 @@ PRIVATE void HTML_start_element ARGS6(
     case HTML_BR:
 	UPDATE_STYLE;
 	CHECK_ID(HTML_GEN_ID);
-	  /* Add a \r (new line) if one of these three scenarios are true: 
-	   *   1. We are not collapsing BR's, or 
-	   *   2. (we are collapsing and) This line has text on it, or 
-	   *   3. (we are collapsing and) The previous line has text on it. 
-	   * Otherwise, don't do anything. -DH 980814 
-	   */ 
-	if ((LYCollapseBRs == FALSE) ||
-	    HText_LastLineSize(me->text, FALSE) || 
-	    HText_PreviousLineSize(me->text, FALSE)) { 
+	  /* Add a \r (new line) if these three conditions are true:
+	   *   1. We are not collapsing BR's, and
+	   *   2. This line has text on it, or
+	   *   3. The previous line has text on it.
+	   * Otherwise, don't do anything. -DH 980814, TD 980827
+	   */
+	if ((LYCollapseBRs == FALSE) &&
+	    (HText_LastLineSize(me->text, FALSE) ||
+	     HText_PreviousLineSize(me->text, FALSE))) {
 	    HText_setLastChar(me->text, ' ');  /* absorb white space */
 	    HText_appendCharacter(me->text, '\r');
 	}
diff --git a/src/LYCharUtils.c b/src/LYCharUtils.c
index cb9337e0..fed8a24b 100644
--- a/src/LYCharUtils.c
+++ b/src/LYCharUtils.c
@@ -2801,8 +2801,8 @@ PUBLIC void LYHandleMETA ARGS4(
 			} else if (!strcmp(p_in->MIMEname, "euc-cn") &&
 				   !strcmp(p_out->MIMEname, "euc-cn")) {
 			    HTCJK = CHINESE;
-			} else if (!strcmp(p_in->MIMEname, "big-5") &&
-				   !strcmp(p_out->MIMEname, "big-5")) {
+			} else if (!strcmp(p_in->MIMEname, "big5") &&
+				   !strcmp(p_out->MIMEname, "big5")) {
 			    HTCJK = TAIPEI;
 			} else if (!strcmp(p_in->MIMEname, "euc-kr") &&
 				   !strcmp(p_out->MIMEname, "euc-kr")) {
diff --git a/src/LYCookie.c b/src/LYCookie.c
index cd458908..9f84e2f6 100644
--- a/src/LYCookie.c
+++ b/src/LYCookie.c
@@ -2274,10 +2274,9 @@ Delete_all_cookies_in_domain:
     sprintf(buf, "<HEAD>\n<TITLE>%s</title>\n</HEAD>\n<BODY>\n",
 		 COOKIE_JAR_TITLE);
     (*target->isa->put_block)(target, buf, strlen(buf));
-
-    sprintf(buf, "<H1>%s</H1>\n", REACHED_COOKIE_JAR_PAGE);
-    (*target->isa->put_block)(target, buf, strlen(buf));
-    sprintf(buf, "<H2>%s Version %s</H2>\n", LYNX_NAME, LYNX_VERSION);
+    sprintf(buf, "<h1>%s (%s), help on <a href=\"%s%s\">%s</a></h1>\n",
+	LYNX_NAME, LYNX_VERSION,
+	helpfilepath, COOKIE_JAR_HELP, COOKIE_JAR_TITLE);
     (*target->isa->put_block)(target, buf, strlen(buf));
 
     sprintf(buf, "<NOTE>%s\n", ACTIVATE_TO_GOBBLE);
@@ -2298,8 +2297,8 @@ Delete_all_cookies_in_domain:
 	/*
 	 *  Show the domain link and 'allow' setting. - FM
 	 */
-	sprintf(buf, "<DT><A HREF=\"LYNXCOOKIE://%s/\">Domain=%s</A>\n",
-		      de->domain, de->domain);
+	sprintf(buf, "<DT>%s<DD><A HREF=\"LYNXCOOKIE://%s/\">Domain=%s</A>\n",
+		      de->domain, de->domain, de->domain);
 	(*target->isa->put_block)(target, buf, strlen(buf));
 	switch (de->bv) {
 	    case (ACCEPT_ALWAYS):
@@ -2316,6 +2315,8 @@ Delete_all_cookies_in_domain:
 		break;
 	}
 	(*target->isa->put_block)(target, buf, strlen(buf));
+	sprintf(buf, "\n");
+	(*target->isa->put_block)(target, buf, strlen(buf));
 
 	/*
 	 *  Show the domain's cookies. - FM
diff --git a/src/LYDownload.c b/src/LYDownload.c
index a1394d77..73a82c6b 100644
--- a/src/LYDownload.c
+++ b/src/LYDownload.c
@@ -616,15 +616,18 @@ PUBLIC int LYdownload_options ARGS2(
     StrAllocCopy(*newfile, download_filename);
     LYforce_no_cache = TRUE;  /* don't cache this doc */
 
+
     fprintf(fp0, "<head>\n<title>%s</title>\n</head>\n<body>\n",
 		 DOWNLOAD_OPTIONS_TITLE);
-
-    fprintf(fp0,"<h1>Download Options (%s Version %s)</h1><pre>\n",
-				       LYNX_NAME, LYNX_VERSION);
-
-
-    fprintf(fp0, "   You have the following download choices.\n");
-    fprintf(fp0, "   Please select one:\n\n");
+    fprintf(fp0, "<h1>%s (%s), help on <a href=\"%s%s\">%s</a></h1>\n",
+		 LYNX_NAME, LYNX_VERSION,
+		 helpfilepath, DOWNLOAD_OPTIONS_HELP, DOWNLOAD_OPTIONS_TITLE);
+    fprintf(fp0, "<pre>\n");
+    fprintf(fp0, "\
+   <em>You download the link:</em> %s\n\
+     <em>Suggested file name:</em> %s%s\n",
+	data_file, (lynx_save_space ? lynx_save_space : ""), sug_filename);
+    fprintf(fp0, "\nStandard download options:\n");
 
     if(!no_disk_save && !child_lynx)
 #ifdef DIRED_SUPPORT
@@ -640,7 +643,9 @@ PUBLIC int LYdownload_options ARGS2(
 	else {}
 #endif /* DIRED_SUPPORT */
     else
-	fprintf(fp0,"   Save to disk disabled.\n");
+	fprintf(fp0,"   <em>Save to disk disabled.</em>\n");
+
+    fprintf(fp0, "\nLocal additions:\n");
 
     if (downloaders != NULL) {
 	for (count = 0, cur_download = downloaders; cur_download != NULL;
@@ -655,9 +660,14 @@ PUBLIC int LYdownload_options ARGS2(
 	    }
 	}
     } else {
-	fprintf(fp0, "\n\
-No other download methods have been defined yet.  You may define\n\
-an unlimited number of download methods using the lynx.cfg file.\n");
+	fprintf(fp0, "   \
+&lt;NONE&gt;\n\n   \
+<!-- \
+You may define an unlimited number of download methods.\n   \
+Please refer to the <a href=\"%s\">lynx.cfg</a> file, \
+sections 'DOWNLOAD' and 'INCLUDE'. \
+--> \n",
+	LYNX_CFG_FILE);
     }
     fprintf(fp0, "</pre>\n</body>\n");
     LYCloseTempFP(fp0);
diff --git a/src/LYDownload.h b/src/LYDownload.h
index 8ea5b9fa..aeed2b19 100644
--- a/src/LYDownload.h
+++ b/src/LYDownload.h
@@ -9,7 +9,5 @@
 extern void LYDownload PARAMS((char *line));
 extern int LYdownload_options PARAMS((char **newfile, char *data_file));
 
-#define DOWNLOAD_OPTIONS_TITLE "Lynx Download Options"
-
 #endif /* LYDOWNLOAD_H */
 
diff --git a/src/LYGlobalDefs.h b/src/LYGlobalDefs.h
index 95f6f308..7b543738 100644
--- a/src/LYGlobalDefs.h
+++ b/src/LYGlobalDefs.h
@@ -15,6 +15,21 @@
 #include <LYStructs.h>
 #endif /* LYSTRUCTS_H */
 
+#ifdef HAVE_CONFIG_H
+#include <LYHelp.h>
+#else
+#define COOKIE_JAR_HELP		"Lynx_users_guide.html#Cookies"
+#define CURRENT_KEYMAP_HELP	"keystrokes/keystroke_help.html"
+#define DIRED_MENU_HELP		"keystrokes/dired_help.html"
+#define DOWNLOAD_OPTIONS_HELP	"Lynx_users_guide.html#RemoteSource"
+#define HISTORY_PAGE_HELP	"keystrokes/history_help.html"
+#define LIST_PAGE_HELP		"keystrokes/follow_help.html"
+#define OPTIONS_HELP		"keystrokes/option_help.html"
+#define PRINT_OPTIONS_HELP	"keystrokes/print_help.html"
+#define UPLOAD_OPTIONS_HELP	"Lynx_users_guide.html#DirEd"
+#define VISITED_LINKS_HELP	"keystrokes/visited_help.html"
+#endif /* LYHELP_H */
+
 #ifdef SOCKS
 extern BOOLEAN socks_flag;
 #endif /* SOCKS */
@@ -238,6 +253,7 @@ extern BOOLEAN no_url_redirection;   /* Don't follow URL redirections */
 extern BOOLEAN display_partial;      /* Display document during download */
 extern int Newline_partial;          /* -//- "current" newline position */
 extern int NumOfLines_partial;       /* -//- "current" number of lines */
+extern BOOLEAN debug_display_partial;  /* show with MessageSecs delay */
 extern char *form_post_data;         /* User data for post form */
 extern char *form_get_data;          /* User data for get form */
 extern char *http_error_file;        /* Place HTTP status code in this file */
diff --git a/src/LYHistory.c b/src/LYHistory.c
index a3501a75..4d39d58a 100644
--- a/src/LYHistory.c
+++ b/src/LYHistory.c
@@ -406,8 +406,10 @@ PUBLIC int showhistory ARGS1(
     LYAddMETAcharsetToFD(fp0, -1);
     fprintf(fp0, "<title>%s</title>\n</head>\n<body>\n",
 		 HISTORY_PAGE_TITLE);
-    fprintf(fp0, "<h1>You have reached the History Page</h1>\n");
-    fprintf(fp0, "<h2>%s Version %s</h2>\n<pre>", LYNX_NAME, LYNX_VERSION);
+    fprintf(fp0, "<h1>%s (%s), help on <a href=\"%s%s\">%s</a></h1>\n",
+		 LYNX_NAME, LYNX_VERSION,
+		 helpfilepath, HISTORY_PAGE_HELP, HISTORY_PAGE_TITLE);
+    fprintf(fp0, "<pre>\n");
     fprintf(fp0, "<em>You selected:</em>\n");
     for (x = nhist-1; x >= 0; x--) {
 	/*
@@ -438,7 +440,6 @@ PUBLIC int showhistory ARGS1(
 	}
 	fprintf(fp0, "<tab to=t%d>%s\n", x, Title);
     }
-
     fprintf(fp0,"</pre>\n</body>\n");
 
     LYCloseTempFP(fp0);
@@ -556,8 +557,10 @@ PUBLIC int LYShowVisitedLinks ARGS1(
     LYAddMETAcharsetToFD(fp0, -1);
     fprintf(fp0, "<title>%s</title>\n</head>\n<body>\n",
 		 VISITED_LINKS_TITLE);
-    fprintf(fp0, "<h1>You have reached the Visited Links Page</h1>\n");
-    fprintf(fp0, "<h2>%s Version %s</h2>\n<pre>", LYNX_NAME, LYNX_VERSION);
+    fprintf(fp0, "<h1>%s (%s), help on <a href=\"%s%s\">%s</a></h1>\n",
+	LYNX_NAME, LYNX_VERSION,
+	helpfilepath, VISITED_LINKS_HELP, VISITED_LINKS_TITLE);
+    fprintf(fp0, "<pre>\n");
     fprintf(fp0,
   "<em>You visited (POSTs, bookmark, menu and list files excluded):</em>\n");
     x = HTList_count(Visited_Links);
@@ -593,7 +596,6 @@ PUBLIC int LYShowVisitedLinks ARGS1(
 	fprintf(fp0, "<tab to=t%d>%s\n", x,
 		     ((Address != NULL) ? Address : "(no address)"));
     }
-
     fprintf(fp0,"</pre>\n</body>\n");
 
     LYCloseTempFP(fp0);
diff --git a/src/LYHistory.h b/src/LYHistory.h
index 3e5bf72b..254889d1 100644
--- a/src/LYHistory.h
+++ b/src/LYHistory.h
@@ -14,7 +14,4 @@ extern int showhistory PARAMS((char **newfile));
 extern BOOLEAN historytarget PARAMS((document *newdoc));
 extern int LYShowVisitedLinks PARAMS((char **newfile));
 
-#define HISTORY_PAGE_TITLE  "Lynx History Page"
-#define VISITED_LINKS_TITLE  "Lynx Visited Links Page"
-
 #endif /* LYHISTORY_H */
diff --git a/src/LYKeymap.c b/src/LYKeymap.c
index f6ba51ca..e5614d8a 100644
--- a/src/LYKeymap.c
+++ b/src/LYKeymap.c
@@ -709,9 +709,11 @@ PRIVATE int LYLoadKeymap ARGS4 (
     sprintf(buf, "<head>\n<title>%s</title>\n</head>\n<body>\n",
     		  CURRENT_KEYMAP_TITLE);
     (*target->isa->put_block)(target, buf, strlen(buf));
-
-    sprintf(buf, "<h1>%s (%s Version %s)</h1>\n<pre>",
-		 CURRENT_KEYMAP_TITLE, LYNX_NAME, LYNX_VERSION);
+    sprintf(buf, "<h1>%s (%s), help on <a href=\"%s%s\">%s</a></h1>\n",
+	LYNX_NAME, LYNX_VERSION,
+	helpfilepath, CURRENT_KEYMAP_HELP, CURRENT_KEYMAP_TITLE);
+    (*target->isa->put_block)(target, buf, strlen(buf));
+    sprintf(buf, "<pre>\n");
     (*target->isa->put_block)(target, buf, strlen(buf));
 
     for (i = 'a'+1; i <= 'z'+1; i++) {
diff --git a/src/LYKeymap.h b/src/LYKeymap.h
index 1c02cd61..e8ccad06 100644
--- a/src/LYKeymap.h
+++ b/src/LYKeymap.h
@@ -23,8 +23,6 @@ extern unsigned short keymap[]; /* main keymap matrix */
 extern unsigned short key_override[];
 #endif
 
-#define CURRENT_KEYMAP_TITLE "Current Key Map"
-
 #define       LYK_1             1
 #define       LYK_2             2
 #define       LYK_3             3
diff --git a/src/LYList.c b/src/LYList.c
index b49032cc..b7de7392 100644
--- a/src/LYList.c
+++ b/src/LYList.c
@@ -96,14 +96,13 @@ PUBLIC int showlist ARGS2(
     }
     fprintf(fp0, "<title>%s</title>\n</head>\n<body>\n",
 		 LIST_PAGE_TITLE);
-    fprintf(fp0, "<h1>You have reached the List Page</h1>\n");
-    fprintf(fp0, "<h2>%s Version %s</h2>\n", LYNX_NAME, LYNX_VERSION);
+    fprintf(fp0, "<h1>%s (%s), help on <a href=\"%s%s\">%s</a></h1>\n",
+	LYNX_NAME, LYNX_VERSION,
+	helpfilepath, LIST_PAGE_HELP, LIST_PAGE_TITLE);
     StrAllocCopy(Address, HTLoadedDocumentURL());
     LYEntify(&Address, FALSE);
-    fprintf(fp0,
-	    "  References in %s<p>\n",
-	    ((Address != NULL && *Address != '\0') ?
-					   Address : "this document:"));
+    fprintf(fp0, "References in %s<p>\n",
+	((Address != NULL && *Address != '\0') ? Address : "this document:"));
     FREE(Address);
     if (refs > 0) {
 	fprintf(fp0, "<%s compact>\n", ((keypad_mode == NUMBERS_AS_ARROWS) ?
diff --git a/src/LYList.h b/src/LYList.h
index f0071d49..4288107b 100644
--- a/src/LYList.h
+++ b/src/LYList.h
@@ -7,6 +7,4 @@ extern char * LYlist_temp_url NOPARAMS;
 extern int showlist PARAMS((document *newdoc, BOOLEAN titles));
 extern void printlist PARAMS((FILE *fp, BOOLEAN titles));
 
-#define LIST_PAGE_TITLE  "Lynx List Page"
-
 #endif /* LYLIST_H */
diff --git a/src/LYLocal.c b/src/LYLocal.c
index a744637a..57c821c9 100644
--- a/src/LYLocal.c
+++ b/src/LYLocal.c
@@ -1686,20 +1686,18 @@ PUBLIC int dired_options ARGS2(
 
     nothing_tagged = (HTList_isEmpty(tagged));
 
-    fprintf(fp0,
-	    "<head>\n<title>%s</title></head>\n<body>\n", DIRED_MENU_TITLE);
-
-    fprintf(fp0,
-	    "\n<h1>File Management Options (%s Version %s)</h1>",
-	    LYNX_NAME, LYNX_VERSION);
-
-    fprintf(fp0, "Current directory is %s<br>\n", dir);
+    fprintf(fp0, "<head>\n<title>%s</title></head>\n<body>\n",
+		 DIRED_MENU_TITLE);
+    fprintf(fp0, "<h1>%s (%s), help on <a href=\"%s%s\">%s</a></h1>\n",
+		 LYNX_NAME, LYNX_VERSION,
+		 helpfilepath, DIRED_MENU_HELP, DIRED_MENU_TITLE);
+    fprintf(fp0, "<em>Current directory:</em> %s<br>\n", dir);
 
     if (nothing_tagged) {
 	if (strlen(path)) {
-	    fprintf(fp0, "Current selection is %s<p>\n", path);
+	    fprintf(fp0, "<em>Current selection:</em> %s<p>\n", path);
 	} else {
-	    fprintf(fp0, "Nothing currently selected.<p>\n");
+	    fprintf(fp0, "<em>Current selection:</em> Nothing currently selected.<p>\n");
 	}
     } else {
 	/*
@@ -1712,7 +1710,7 @@ PUBLIC int dired_options ARGS2(
 	char *cd = NULL;
 	int i, m;
 #define NUM_TAGS_TO_WRITE 10
-	fprintf(fp0, "Current selection is %d tagged item%s",
+	fprintf(fp0, "<em>Current selection:</em> %d tagged item%s",
 		     n, ((n == 1) ? ":" : "s:"));
 	StrAllocCopy(cd, doc->address);
 	HTUnEscapeSome(cd, "/");
@@ -1724,7 +1722,7 @@ PUBLIC int dired_options ARGS2(
 			     (*cd ? cd : "file://localhost"));
 	    HTUnEscape(cp1);
 	    LYEntify(&cp1, TRUE); /* _should_ do this everywhere... */
-	    fprintf(fp0, "%s <br>\n &nbsp;&nbsp;&nbsp;%s",
+	    fprintf(fp0, "%s<br>\n&nbsp;&nbsp;&nbsp;%s",
 			 (i == 1 ? "" : " ,"), cp1);
 	    FREE(cp1);
 	}
diff --git a/src/LYLocal.h b/src/LYLocal.h
index 48f9509a..029718d1 100644
--- a/src/LYLocal.h
+++ b/src/LYLocal.h
@@ -60,9 +60,6 @@ extern void showtags PARAMS((HTList *tag));
 extern int local_dired PARAMS((document *doc));
 extern int dired_options PARAMS ((document *doc, char ** newfile));
 
-#define DIRED_MENU_TITLE "File Management Options"
-#define PERMIT_OPTIONS_TITLE "File Permission Options"
-
 extern void add_menu_item PARAMS((char *str));
 
 #endif /* DIRED_SUPPORT */
diff --git a/src/LYMainLoop.c b/src/LYMainLoop.c
index 243bf25d..2f8d856b 100644
--- a/src/LYMainLoop.c
+++ b/src/LYMainLoop.c
@@ -89,7 +89,8 @@ PUBLIC char * LYRequestTitle = NULL; /* newdoc.title in calls to getfile() */
 
 #ifdef DISP_PARTIAL
 PUBLIC int Newline_partial = 0;     /* required for display_partial mode */
-PUBLIC int NumOfLines_partial = 0;  /* required for display_partial mode */
+PUBLIC int NumOfLines_partial = -1; /* required for display_partial mode */
+PUBLIC BOOLEAN debug_display_partial;  /* show with MessageSecs delay */
 #endif
 
 PRIVATE document newdoc;
@@ -204,6 +205,7 @@ int mainloop NOARGS
     BOOLEAN LYRawMode_flag = LYRawMode;
 #ifndef EXP_FORMS_OPTIONS
     BOOLEAN LYSelectPopups_flag = LYSelectPopups;
+    BOOLEAN verbose_img_flag = verbose_img;
     BOOLEAN keypad_mode_flag = keypad_mode;
     BOOLEAN show_dotfiles_flag = show_dotfiles;
     BOOLEAN user_mode_flag = user_mode;
@@ -376,15 +378,7 @@ try_again:
 		     *	elements to the curdoc structure elements
 		     *	under case NORMAL.  - FM
 		     */
-#ifndef EXP_FORMS_OPTIONS
 		    if (strncmp(newdoc.address, "LYNXDOWNLOAD:", 13))
-#else /* EXP_FORMS_OPTIONS */
-		    if (!strncmp(newdoc.address, "LYNXOPTIONS://MBM_MENU", 22))
-			LYpush(&curdoc, ForcePush);
-
-		    if (strncmp(newdoc.address, "LYNXDOWNLOAD:", 13) &&
-			strncmp(newdoc.address, "LYNXOPTIONS:", 12))
-#endif /* EXP_FORMS_OPTIONS */
 		    {
 			LYpush(&curdoc, ForcePush);
 		    }
@@ -509,16 +503,20 @@ try_again:
 #ifdef DISP_PARTIAL
 		display_partial = display_partial_flag; /* restore */
 		Newline_partial = newdoc.line; /* initialize */
-		NumOfLines_partial = 0;        /* initialize */
+		NumOfLines_partial = -1;       /* initialize to -1 */
+				/* -1 restrict HTDisplayPartial()   */
+				/* until HText_new() start new HTMainText */
+				/* and set the flag to 0  */
 		if (display_partial) {
 		    /*
-		     * Disable display_partial if requested URL has #fragment. 
+		     * Disable display_partial if requested URL has #fragment.
 		     * Otherwise user got the new document from the first page
 		     * and be moved to #fragment later after download
 		     * completed, but only if user did not mess screen up by
 		     * scrolling before...  So fall down to old behavior here.
 		     */
-		    if (!LYCursesON || (strchr(newdoc.address, '#')))
+		    if (!LYCursesON ||
+				(strchr(newdoc.address, '#')))
 			display_partial = FALSE;
 		}
 #endif /* DISP_PARTIAL */
@@ -1009,12 +1007,20 @@ try_again:
 		     */
 		    Newline = newdoc.line;
 #ifdef DISP_PARTIAL
-		    /*
-		     *	Override newdoc.line with a new value if user
-		     *	scrolled the document while downloading.
-		     */
-		    if (display_partial && (Newline_partial != newdoc.line))
-			Newline = Newline_partial;
+		    if (display_partial) {
+			/*
+			 *  Override newdoc.line with a new value if user
+			 *  scrolled the document while downloading.
+			 */
+			if (Newline_partial != newdoc.line)
+			    Newline = Newline_partial;
+
+			/*
+			 *  End of incremental rendering stage here.
+			 *  Reset for debugging purpose only.
+			 */
+			display_partial = FALSE;
+		    }
 #endif /* DISP_PARTIAL */
 
 		    /*
@@ -1959,9 +1965,9 @@ new_cmd:  /*
 		     *	users (like me 8-). - FM
 		     */
 		    if (Newline <= 1) {
-			HTUserMsg(ALREADY_AT_BEGIN);
+			HTInfoMsg(ALREADY_AT_BEGIN);
 		    } else if (!more) {
-			HTUserMsg(ALREADY_AT_END);
+			HTInfoMsg(ALREADY_AT_END);
 		    } else {
 			StrAllocCopy(temp, user_input_buffer);
 			sprintf(user_input_buffer,
@@ -2229,7 +2235,7 @@ new_cmd:  /*
 		curdoc.link = nlinks-1;  /* put on last link */
 	    } else if (old_c != real_c) {
 		   old_c = real_c;
-		   HTUserMsg(ALREADY_AT_END);
+		   HTInfoMsg(ALREADY_AT_END);
 	    }
 	    break;
 
@@ -2241,7 +2247,7 @@ new_cmd:  /*
 		curdoc.link = 0;  /* put on first link */
 	    } else if (old_c != real_c) {
 		old_c = real_c;
-		HTUserMsg(ALREADY_AT_BEGIN);
+		HTInfoMsg(ALREADY_AT_BEGIN);
 	    }
 	    break;
 
@@ -2260,7 +2266,7 @@ new_cmd:  /*
 		}
 	    } else if (old_c != real_c) {
 		old_c = real_c;
-		HTUserMsg(ALREADY_AT_BEGIN);
+		HTInfoMsg(ALREADY_AT_BEGIN);
 	    }
 	    break;
 
@@ -2275,7 +2281,7 @@ new_cmd:  /*
 		}
 	    } else if (old_c != real_c) {
 		old_c = real_c;
-		HTUserMsg(ALREADY_AT_END);
+		HTInfoMsg(ALREADY_AT_END);
 	    }
 	    break;
 
@@ -2297,7 +2303,7 @@ new_cmd:  /*
 		}
 	    } else if (old_c != real_c) {
 		old_c = real_c;
-		HTUserMsg(ALREADY_AT_BEGIN);
+		HTInfoMsg(ALREADY_AT_BEGIN);
 	    }
 	    break;
 
@@ -2312,7 +2318,7 @@ new_cmd:  /*
 		}
 	    } else if (old_c != real_c) {
 		old_c = real_c;
-		HTUserMsg(ALREADY_AT_END);
+		HTInfoMsg(ALREADY_AT_END);
 	    }
 	    break;
 
@@ -2378,7 +2384,7 @@ new_cmd:  /*
 
 	    } else if (old_c != real_c) {
 		old_c = real_c;
-		HTUserMsg(ALREADY_AT_BEGIN);
+		HTInfoMsg(ALREADY_AT_BEGIN);
 	    }
 	    break;
 
@@ -2420,7 +2426,7 @@ new_cmd:  /*
 
 	    } else if (old_c != real_c) {
 		old_c = real_c;
-		HTUserMsg(ALREADY_AT_END);
+		HTInfoMsg(ALREADY_AT_END);
 	    }
 	    break;
 
@@ -2479,7 +2485,7 @@ new_cmd:  /*
 
 	    } else if (old_c != real_c) {
 		old_c = real_c;
-		HTUserMsg(ALREADY_AT_BEGIN);
+		HTInfoMsg(ALREADY_AT_BEGIN);
 	    }
 	    break;
 
@@ -2522,7 +2528,7 @@ new_cmd:  /*
 
 	    } else if (old_c != real_c) {
 		old_c = real_c;
-		HTUserMsg(ALREADY_AT_END);
+		HTInfoMsg(ALREADY_AT_END);
 	    }
 	    break;
 
@@ -3742,7 +3748,8 @@ check_goto_URL:
 	    c = dir_list_style;
 #endif /* DIRED_SUPPORT */
 #ifndef EXP_FORMS_OPTIONS
-	    LYoptions(); /* do the options stuff */
+
+	    LYoptions(); /* do the old-style options stuff */
 
 	    if (keypad_mode_flag != keypad_mode ||
 		(user_mode_flag != user_mode &&
@@ -3758,6 +3765,7 @@ check_goto_URL:
 		CurrentCharSet_flag != current_char_set ||
 		CurrentAssumeCharSet_flag != UCLYhndl_for_unspec ||
 		CurrentAssumeLocalCharSet_flag != UCLYhndl_HTFile_for_unspec ||
+		verbose_img_flag != verbose_img ||
 		LYRawMode_flag != LYRawMode ||
 		LYSelectPopups_flag != LYSelectPopups ||
 		((strcmp(CurrentUserAgent, (LYUserAgent ?
@@ -3829,6 +3837,7 @@ check_goto_URL:
 	    CurrentAssumeCharSet_flag = UCLYhndl_for_unspec;
 	    CurrentAssumeLocalCharSet_flag = UCLYhndl_HTFile_for_unspec;
 	    show_dotfiles_flag = show_dotfiles;
+	    verbose_img_flag = verbose_img;
 	    LYRawMode_flag = LYRawMode;
 	    LYSelectPopups_flag = LYSelectPopups;
 	    StrAllocCopy(CurrentUserAgent, (LYUserAgent ?
@@ -3858,15 +3867,15 @@ check_goto_URL:
 		FREE(newdoc.bookmark);
 		newdoc.isHEAD = FALSE;
 		newdoc.safe = FALSE;
-		ForcePush = TRUE;
 		if (check_realm)
 		    LYPermitURL = TRUE;
 		refresh_screen = TRUE;	/* redisplay */
 
 		/*
 		 * FIXME:  this is a temporary solution until we find the
-		 * correct place for this command to reload the document before
-		 * 'options menu' only when necessary.
+		 * correct place for this command to reload the document
+		 * before the 'options menu' only when (few) important options
+		 * were changed.
 		 */
 		HTuncache_current_document();
 	    }
@@ -4386,7 +4395,7 @@ check_goto_URL:
 		FREE(newdoc.bookmark);
 		newdoc.isHEAD = FALSE;
 		newdoc.safe = FALSE;
-		ForcePush = TRUE;
+		ForcePush = TRUE;  /* see LYpush() and print_options() */
 		if (check_realm)
 		    LYPermitURL = TRUE;
 		refresh_screen = TRUE;	/* redisplay */
@@ -5017,6 +5026,10 @@ check_add_bookmark_to_self:
 				    "lynxprog:", 9)) {
 		    HTUserMsg(NO_DOWNLOAD_SPECIAL);
 
+		} else if (!strncmp(links[curdoc.link].lname,
+				    "mailto:", 7)) {
+		    HTUserMsg(NO_DOWNLOAD_MAILTO_LINK);
+
 		} else {   /* Not a forms, options or history link */
 		    /*
 		     *	Follow a normal link or anchor.  Note that
diff --git a/src/LYOptions.c b/src/LYOptions.c
index abde33dc..cf1c3293 100644
--- a/src/LYOptions.c
+++ b/src/LYOptions.c
@@ -5,6 +5,7 @@
 #include <LYUtils.h>
 #include <LYStrings.h>
 #include <LYGlobalDefs.h>
+#include <LYHistory.h>
 #include <LYOptions.h>
 #include <LYSignal.h>
 #include <LYClean.h>
@@ -321,6 +322,9 @@ draw_options:
       ((user_mode == INTERMEDIATE_MODE) ? "Intermediate" :
 					  "Advanced    "));
 
+    addstr("  verbose images (!) : ");
+    addstr( verbose_img ? "ON " : "OFF" );
+
     move(L_User_Agent, 5);
     addstr("user (A)gent                 : ");
     addstr((LYUserAgent && *LYUserAgent) ? LYUserAgent : "NONE");
@@ -1384,6 +1388,46 @@ draw_options:
 		}
 		break;
 
+	    case '!':
+		/*
+		 *  Copy strings into choice array.
+		 */
+		choices[0] = NULL;
+		StrAllocCopy(choices[0], "OFF");
+		choices[1] = NULL;
+		StrAllocCopy(choices[1], "ON ");
+		choices[2] = NULL;
+		if (!LYSelectPopups) {
+		    verbose_img = boolean_choice(verbose_img,
+						L_VERBOSE_IMAGES,
+						C_VERBOSE_IMAGES,
+						choices);
+		} else {
+		    verbose_img = popup_choice(verbose_img,
+					     L_VERBOSE_IMAGES,
+					     C_VERBOSE_IMAGES,
+					     choices,
+					     2, FALSE);
+		}
+		FREE(choices[0]);
+		FREE(choices[1]);
+		response = ' ';
+		if (LYSelectPopups) {
+#if !defined(VMS) || defined(USE_SLANG)
+		    if (term_options) {
+			term_options = FALSE;
+		    } else {
+			AddValueAccepted = TRUE;
+		    }
+		    goto draw_options;
+#else
+		    term_options = FALSE;
+		    if (use_assume_charset != old_use_assume_charset)
+			goto draw_options;
+#endif /* !VMS || USE_SLANG */
+		}
+		break;
+
 	    case 'a':	/* Change user agent string. */
 	    case 'A':
 		if (!no_useragent) {
@@ -3100,6 +3144,8 @@ static char * raw_mode_string = "raw_mode";
 
 static char * show_color_string = "show_color";
 
+static char * verbose_images_string = "verbose_images";
+
 static char * vi_keys_string = "vi_keys";
 
 static char * emacs_keys_string = "emacs_keys";
@@ -3110,19 +3156,21 @@ static char * select_popups_string = "select_popups";
 
 static char * show_cursor_string = "show_cursor";
 
+static char * user_agent_string = "user_agent";
+
 static OptValues bool_values[] = {
 	{ FALSE,             "OFF",               "OFF"         },
 	{ TRUE,              "ON",                "ON"          },
 	{ 0, 0, 0 }};
 
-#ifdef DIRED_SUPPORT 
+#ifdef DIRED_SUPPORT
 static OptValues dired_values[] = {
 	{ 0,                 "Directories first", "dired_dir"   },
 	{ FILES_FIRST,       "Files first",       "dired_files" },
 	{ MIXED_STYLE,       "Mixed style",       "dired_mixed" },
 	{ 0, 0, 0 }};
 static char * dired_sort_string = "dired_sort";
-#endif /* DIRED_SUPPORT */ 
+#endif /* DIRED_SUPPORT */
 
 static OptValues ftp_sort_values[] = {
 	{ FILE_BY_NAME,      "By Name",           "ftp_by_name" },
@@ -3164,20 +3212,24 @@ static OptValues user_mode_values[] = {
 static char * user_mode_string = "user_mode";
 
 #define PutLabel(fp, text) \
-	fprintf(fp,"<label>%s:</label> ", text)
+	fprintf(fp,"%-35s: ", text)
+
+#define PutTextInput(fp, name, value, size, disable) \
+	fprintf(fp,\
+	"<input size=%d type=\"text\" name=\"%s\" value=\"%s\" %s>\n",\
+		size, name, value, disable)
 
 #define PutOption(fp, flag, html, name) \
-	fprintf(fp, "<option %s value=\"%s\">%s</option>\n", \
-	    SELECTED(flag), html, name)
+	fprintf(fp,"<option value=\"%s\" %s>%s\n", html, SELECTED(flag), name)
 
 #define BeginSelect(fp, text) \
 	fprintf(fp,"<select name=\"%s\">\n", text)
 
 #define MaybeSelect(fp, flag, text) \
-	fprintf(fp,"<select %s name=\"%s\">\n", DISABLED(flag), text)
+	fprintf(fp,"<select name=\"%s\" %s>\n", text, DISABLED(flag))
 
 #define EndSelect(fp)\
-	fprintf(fp, "</select>\n")
+	fprintf(fp,"</select>\n")
 
 PRIVATE void PutOptValues ARGS3(
 	FILE *,		fp,
@@ -3444,6 +3496,13 @@ PUBLIC int postoptions ARGS1(
 	}
 
 	/*
+	 * verbose images mode
+	 */
+	if (!strcmp(data[i].tag, verbose_images_string)) {
+	    verbose_img = GetOptValues(bool_values, data[i].value);
+	}
+
+	/*
 	 * vi_keys
 	 */
 	if (!strcmp(data[i].tag, vi_keys_string)) {
@@ -3510,6 +3569,15 @@ PUBLIC int postoptions ARGS1(
 	}
 
 	/*
+	 * user_agent header
+	 */
+	if (!strcmp(data[i].tag, user_agent_string)) {
+	    FREE(LYUserAgent);
+	    /* ignore Copyright warning ? */
+	    StrAllocCopy(LYUserAgent, data[i].value);
+	}
+
+	/*
 	 * save_options
 	 */
 	if (!strcmp(data[i].tag, save_options_string)) {
@@ -3561,6 +3629,7 @@ PUBLIC int postoptions ARGS1(
 	    HTAlert(OPTIONS_NOT_SAVED);
 	}
     }
+    LYpop(newdoc);  /* return to previous doc, not to options menu! */
     if (need_reload == TRUE)  {
         /* FIXME: currently dummy */
     }
@@ -3583,7 +3652,8 @@ PUBLIC int gen_options ARGS1(
     static char tempfile[256];
     char any_filename[256];
     FILE *fp0;
-    char *leaf;
+    size_t cset_len = 0;
+    size_t text_len = COLS - 38;	/* cf: PutLabel */
 
     LYRemoveTemp(tempfile);
     fp0 = LYOpenTemp(tempfile, HTML_SUFFIX, "w");
@@ -3599,9 +3669,9 @@ PUBLIC int gen_options ARGS1(
 
     fprintf(fp0, "<html>\n<head>\n<title>%s</title>\n</head>\n<body>\n",
 	    OPTIONS_TITLE);
-
-    fprintf(fp0,"<h1>Options Menu (%s Version %s)</h1>\n",
-	    LYNX_NAME, LYNX_VERSION);
+    fprintf(fp0, "<h1>%s (%s), help on <a href=\"%s%s\">%s</a></h1>\n",
+		 LYNX_NAME, LYNX_VERSION,
+		 helpfilepath, OPTIONS_HELP, OPTIONS_TITLE);
 
     /*
      * I do C, not HTML.  Feel free to pretty this up.
@@ -3618,91 +3688,74 @@ PUBLIC int gen_options ARGS1(
 	    secure_string, secure_value);
 
     /*
-     * visible preformatted text begins here
+     * visible text begins here
      */
-    fprintf(fp0,"<pre>\n\n");
 
     /*
      * save/reset
      */
-    fprintf(fp0,"<input type=\"submit\" value=\"Accept Changes\">");
-    fprintf(fp0," <input type=\"reset\" value=\"Reset\">");
-    fprintf(fp0," Use the back key to cancel changes.");
-
-    strcpy(any_filename, helpfile);
-    if ((leaf = strrchr(any_filename, '/')) != 0)
-    	leaf++;
-    else
-        leaf = any_filename;
-    strcpy(leaf, "keystrokes/option_help.html");
-
-    fprintf(fp0," <a href=\"%s\"> HELP available</a>\n\n", any_filename);
+    fprintf(fp0,"<p align=center>\n");
+    fprintf(fp0,"<input type=\"submit\" value=\"Accept Changes\">\n");
+    fprintf(fp0,"<input type=\"reset\" value=\"Reset Changes\">\n");
+    fprintf(fp0,"Left Arrow cancels changes<br>\n");
 
     /*
-     * editor
+     * save options
      */
-    PutLabel(fp0, "Editor");
-    fprintf(fp0,"<input %s type=\"text\" name=\"%s\" value=\"%s\">\n",
-	    DISABLED(no_editor || system_editor),
-	    editor_string,
-	    NOTEMPTY(editor));
+    if (!no_option_save) {
+	fprintf(fp0, "<p>Save options to disk: ");
+	fprintf(fp0,"<input type=\"checkbox\" name=\"%s\">\n",
+		save_options_string);
+    }
 
     /*
-     * display
+     * preformatted text follows
      */
-    PutLabel(fp0, "Display");
-    fprintf(fp0,"<input type=\"text\" name=\"%s\" value=\"%s\">\n",
-	    display_string,
-	    NOTEMPTY(display));
+    fprintf(fp0,"<pre>\n");
+    fprintf(fp0,"\n<em>Personal Preferences</em>\n");
 
     /*
-     * multi-bookmarks mode
+     * user_mode
+     *
+     * This option is here because we come from LYMainLoop() with
+     * newdoc.links = 3, and land on 'save options', however if
+     * no_option_save is set we will land on 'Display' which is an input
+     * field and leaving back to previous document will be annoying.
+     * Thus 'user mode' is the most sensible option to put into the
+     * front lines. - SKY
      */
-    if (!LYMBMBlocked) {
-       PutLabel(fp0, "Multi-bookmarks");
-       BeginSelect(fp0, mbm_string);
-       PutOption(fp0, !LYMultiBookmarks,
-	   mbm_off_string,
-	   mbm_off_string);
-       PutOption(fp0, LYMultiBookmarks && !LYMBMAdvanced,
-	   mbm_standard_string,
-	   mbm_standard_string);
-       PutOption(fp0, LYMultiBookmarks && LYMBMAdvanced,
-	   mbm_advanced_string,
-	   mbm_advanced_string);
-       EndSelect(fp0);
-    }
+    PutLabel(fp0, "User Mode");
+    BeginSelect(fp0, user_mode_string);
+    PutOptValues(fp0, user_mode, user_mode_values);
+    EndSelect(fp0);
 
     /*
-     * bookmarks files menu
+     * display
      */
-    if (LYMultiBookmarks) {
-
-        PutLabel(fp0, "Review/edit Bookmarks files");
-        fprintf(fp0,"<a href=\"LYNXOPTIONS://MBM_MENU\">go mbm menu</a>\n");
-
-    } else {
-        PutLabel(fp0, "Bookmarks file");
-        fprintf(fp0,"<input type=\"text\" name=\"%s\" value=\"%s\">\n",
-		single_bookmark_string,
-		NOTEMPTY(bookmark_page));
-    }
+    PutLabel(fp0, "Display");
+    PutTextInput(fp0, display_string, NOTEMPTY(display), text_len, "");
 
     /*
-     * ftp sort
+     * editor
      */
-    PutLabel(fp0, "Ftp sort criteria");
-    BeginSelect(fp0, ftp_sort_string);
-    PutOptValues(fp0, HTfileSortMethod, ftp_sort_values);
+    PutLabel(fp0, "Editor");
+    PutTextInput(fp0, editor_string, NOTEMPTY(editor), text_len,
+		DISABLED(no_editor || system_editor));
+    /*
+     * emacs_keys
+     */
+    PutLabel(fp0, "Emacs Keys");
+    BeginSelect(fp0, emacs_keys_string);
+    PutOptValues(fp0, emacs_keys, bool_values);
     EndSelect(fp0);
 
     /*
-     * mail_address
+     * keypad_mode
      */
-    PutLabel(fp0, "Personal mail address");
-    fprintf(fp0,"<input type=\"text\" name=\"%s\" value=\"%s\">\n",
-	    mail_address_string,
-	    NOTEMPTY(personal_mail_address));
+    PutLabel(fp0, "Keypad Mode");
+    BeginSelect(fp0, keypad_mode_string);
+    PutOptValues(fp0, keypad_mode, keypad_mode_values);
+    EndSelect(fp0);
 
     /*
      * search_type
@@ -3713,79 +3766,21 @@ PUBLIC int gen_options ARGS1(
     EndSelect(fp0);
 
     /*
-     * preferred_doc_lang
-     */
-    PutLabel(fp0, "Preferred document language");
-    fprintf(fp0,"<input type=\"text\" name=\"%s\" value=\"%s\">\n",
-	    preferred_doc_lang_string,
-	    NOTEMPTY(language));
-
-    /*
-     * preferred_doc_char
-     */
-    PutLabel(fp0, "Preferred document character set");
-    fprintf(fp0,"<input type=\"text\" name=\"%s\" value=\"%s\">\n",
-	    preferred_doc_char_string,
-	    NOTEMPTY(pref_charset));
-
-    /*
-     * display_char_set
+     * mail_address
      */
-    PutLabel(fp0, "Display character set");
-    BeginSelect(fp0, display_char_set_string);
-    for (i = 0; LYchar_set_names[i]; i++) {
-	char temp[10];
-	sprintf(temp, "%d", i);
-        PutOption(fp0, i==current_char_set, temp, LYchar_set_names[i]);
-    }
-    EndSelect(fp0);
+    PutLabel(fp0, "Personal mail address");
+    PutTextInput(fp0, mail_address_string,
+		NOTEMPTY(personal_mail_address), text_len, "");
 
     /*
-     * raw_mode
+     * select_popups
      */
-    if  (LYHaveCJKCharacterSet)
-	/*
-	 * Since CJK people hardly mixed with other world
-	 * we split the header to make it more readable:
-	 * "CJK mode" for CJK display charsets, and "Raw 8-bit" for others.
-	 */
-	PutLabel(fp0, "CJK mode");
-    else
-	PutLabel(fp0, "Raw 8-bit");
-
-    BeginSelect(fp0, raw_mode_string);
-    PutOptValues(fp0, LYRawMode, bool_values);
+    PutLabel(fp0, "Popups for select fields");
+    BeginSelect(fp0, select_popups_string);
+    PutOptValues(fp0, LYSelectPopups, bool_values);
     EndSelect(fp0);
 
     /*
-     * assume_char_set
-     */
-    /*
-     * FIXME: If bogus value in lynx.cfg, then in old way, that is the
-     * string that was displayed.  Now, user will never see that.  Good
-     * or bad?  I don't know.  MRC
-     */
-    /* if (user_mode==ADVANCED_MODE) */ {
-	int curval;
-
-	curval = UCLYhndl_for_unspec;
-	if (curval == current_char_set && UCAssume_MIMEcharset) {
-	    curval = UCGetLYhndl_byMIME(UCAssume_MIMEcharset);
-	}
-	if (curval < 0) {
-	    curval = LYRawMode ? current_char_set : 0;
-	}
-	PutLabel(fp0, "Assumed document character set");
-	BeginSelect(fp0, assume_char_set_string);
-	for (i = 0; i < LYNumCharsets; i++) {
-	    PutOption(fp0, i==curval,
-		      LYCharSet_UC[i].MIMEname,
-		      LYCharSet_UC[i].MIMEname);
-	}
-	EndSelect(fp0);
-    }
-
-    /*
      * show_color
      */
 #if defined(USE_SLANG) || defined(COLOR_CURSES)
@@ -3831,6 +3826,22 @@ PUBLIC int gen_options ARGS1(
 #endif /* USE_SLANG || COLOR_CURSES */
 
     /*
+     * verbose images mode
+     */
+    PutLabel(fp0, "Verbose images");
+    BeginSelect(fp0, verbose_images_string);
+    PutOptValues(fp0, verbose_img, bool_values);
+    EndSelect(fp0);
+
+    /*
+     * show_cursor
+     */
+    PutLabel(fp0, "Show cursor");
+    BeginSelect(fp0, show_cursor_string);
+    PutOptValues(fp0, LYShowCursor, bool_values);
+    EndSelect(fp0);
+
+    /*
      * vi_keys
      */
     PutLabel(fp0, "VI Keys");
@@ -3838,46 +3849,125 @@ PUBLIC int gen_options ARGS1(
     PutOptValues(fp0, vi_keys, bool_values);
     EndSelect(fp0);
 
+    fprintf(fp0,"\n<em>Bookmarks Options</em>\n");
+
     /*
-     * emacs_keys
+     * multi-bookmarks mode
      */
-    PutLabel(fp0, "Emacs Keys");
-    BeginSelect(fp0, emacs_keys_string);
-    PutOptValues(fp0, emacs_keys, bool_values);
-    EndSelect(fp0);
+    if (!LYMBMBlocked) {
+       PutLabel(fp0, "Multi-bookmarks");
+       BeginSelect(fp0, mbm_string);
+       PutOption(fp0, !LYMultiBookmarks,
+	   mbm_off_string,
+	   mbm_off_string);
+       PutOption(fp0, LYMultiBookmarks && !LYMBMAdvanced,
+	   mbm_standard_string,
+	   mbm_standard_string);
+       PutOption(fp0, LYMultiBookmarks && LYMBMAdvanced,
+	   mbm_advanced_string,
+	   mbm_advanced_string);
+       EndSelect(fp0);
+    }
 
     /*
-     * show_dotfiles
+     * bookmarks files menu
      */
-    if (!no_dotfiles) {
-	PutLabel(fp0, "Show dot files");
-	BeginSelect(fp0, show_dotfiles_string);
-	PutOptValues(fp0, show_dotfiles, bool_values);
+    if (LYMultiBookmarks) {
+
+        PutLabel(fp0, "Review/edit Bookmarks files");
+        fprintf(fp0,
+	"<a href=\"LYNXOPTIONS://MBM_MENU\">Goto multi-bookmark menu</a>\n");
+
+    } else {
+        PutLabel(fp0, "Bookmarks file");
+        PutTextInput(fp0, single_bookmark_string,
+		NOTEMPTY(bookmark_page), text_len, "");
+    }
+
+    fprintf(fp0,"\n<em>Character Set Options</em>\n");
+
+    /*
+     * assume_char_set
+     */
+    /*
+     * FIXME: If bogus value in lynx.cfg, then in old way, that is the
+     * string that was displayed.  Now, user will never see that.  Good
+     * or bad?  I don't know.  MRC
+     */
+    /* if (user_mode==ADVANCED_MODE) */ {
+	int curval;
+
+	curval = UCLYhndl_for_unspec;
+	if (curval == current_char_set && UCAssume_MIMEcharset) {
+	    curval = UCGetLYhndl_byMIME(UCAssume_MIMEcharset);
+	}
+	if (curval < 0) {
+	    curval = LYRawMode ? current_char_set : 0;
+	}
+	PutLabel(fp0, "Assumed document character set");
+	BeginSelect(fp0, assume_char_set_string);
+	for (i = 0; i < LYNumCharsets; i++) {
+	    PutOption(fp0, i==curval,
+		      LYCharSet_UC[i].MIMEname,
+		      LYCharSet_UC[i].MIMEname);
+	}
 	EndSelect(fp0);
     }
 
     /*
-     * select_popups
+     * display_char_set
      */
-    PutLabel(fp0, "Popups for select fields");
-    BeginSelect(fp0, select_popups_string);
-    PutOptValues(fp0, LYSelectPopups, bool_values);
+    PutLabel(fp0, "Display character set");
+    BeginSelect(fp0, display_char_set_string);
+    for (i = 0; LYchar_set_names[i]; i++) {
+	char temp[10];
+	size_t len = strlen(LYchar_set_names[i]);
+	if (len > cset_len)
+		cset_len = len;
+	sprintf(temp, "%d", i);
+        PutOption(fp0, i==current_char_set, temp, LYchar_set_names[i]);
+    }
     EndSelect(fp0);
 
     /*
-     * show_cursor
+     * preferred_doc_char
      */
-    PutLabel(fp0, "Show cursor");
-    BeginSelect(fp0, show_cursor_string);
-    PutOptValues(fp0, LYShowCursor, bool_values);
+    PutLabel(fp0, "Preferred document character set");
+    PutTextInput(fp0, preferred_doc_char_string,
+	    NOTEMPTY(pref_charset), cset_len+2, "");
+
+    /*
+     * preferred_doc_lang
+     */
+    PutLabel(fp0, "Preferred document language");
+    PutTextInput(fp0, preferred_doc_lang_string,
+	    NOTEMPTY(language), cset_len+2, "");
+
+    /*
+     * raw_mode
+     */
+    if  (LYHaveCJKCharacterSet)
+	/*
+	 * Since CJK people hardly mixed with other world
+	 * we split the header to make it more readable:
+	 * "CJK mode" for CJK display charsets, and "Raw 8-bit" for others.
+	 */
+	PutLabel(fp0, "CJK mode");
+    else
+	PutLabel(fp0, "Raw 8-bit");
+
+    BeginSelect(fp0, raw_mode_string);
+    PutOptValues(fp0, LYRawMode, bool_values);
     EndSelect(fp0);
 
+    fprintf(fp0,"\n<em>File Management Options</em>\n");
+
     /*
-     * keypad_mode
+     * ftp sort
      */
-    PutLabel(fp0, "Keypad Mode");
-    BeginSelect(fp0, keypad_mode_string);
-    PutOptValues(fp0, keypad_mode, keypad_mode_values);
+    PutLabel(fp0, "Ftp sort criteria");
+    BeginSelect(fp0, ftp_sort_string);
+    PutOptValues(fp0, HTfileSortMethod, ftp_sort_values);
     EndSelect(fp0);
 
 #ifdef DIRED_SUPPORT
@@ -3891,38 +3981,43 @@ PUBLIC int gen_options ARGS1(
 #endif /* DIRED_SUPPORT */
 
     /*
-     * user_mode
+     * show_dotfiles
      */
-    PutLabel(fp0, "User Mode");
-    BeginSelect(fp0, user_mode_string);
-    PutOptValues(fp0, user_mode, user_mode_values);
-    EndSelect(fp0);
+    if (!no_dotfiles) {
+	PutLabel(fp0, "Show dot files");
+	BeginSelect(fp0, show_dotfiles_string);
+	PutOptValues(fp0, show_dotfiles, bool_values);
+	EndSelect(fp0);
+    }
+
+    fprintf(fp0,"\n");
 
     /*
-     * save options
+     * user_agent
      */
-    if (!no_option_save) {
-	PutLabel(fp0, "Save options to disk");
-	fprintf(fp0,"<input type=\"checkbox\" name=\"%s\">\n",
-		save_options_string);
+    if (!no_useragent) {
+	PutLabel(fp0, "User-Agent header");
+	PutTextInput(fp0, user_agent_string, NOTEMPTY(LYUserAgent), text_len, "");
     }
 
+    fprintf(fp0,"\n</pre>\n");
+
     /*
      * save/reset
      */
-    fprintf(fp0,"\n");
-    fprintf(fp0,"<input type=\"submit\" value=\"Accept Changes\">");
-    fprintf(fp0," <input type=\"reset\" value=\"Reset\">");
-    fprintf(fp0," Use the back key to cancel changes.\n");
+    fprintf(fp0,"<p align=center>\n");
+    fprintf(fp0,"<input type=\"submit\" value=\"Accept Changes\">\n ");
+    fprintf(fp0,"<input type=\"reset\" value=\"Reset Changes\">\n");
+    fprintf(fp0,"Left Arrow cancels changes<br>\n");
 
     /*
      * close HTML
      */
-    fprintf(fp0,"</pre>\n");
+    fprintf(fp0,"</form>\n");
     fprintf(fp0,"</body>\n");
     fprintf(fp0,"</html>\n");
 
-    fclose(fp0);
+    LYCloseTempFP(fp0);
     return(0);
 }
 #endif /* EXP_FORMS_OPTIONS */
diff --git a/src/LYOptions.h b/src/LYOptions.h
index fc7f528a..c11c6150 100644
--- a/src/LYOptions.h
+++ b/src/LYOptions.h
@@ -69,8 +69,10 @@ extern void LYoptions NOPARAMS;
 #define L_EXEC		18
 #endif /* DIRED_SUPPORT */
 
-#endif /* EXP_FORMS_OPTIONS */
+#define L_VERBOSE_IMAGES L_USER_MODE
+#define B_VERBOSE_IMAGES 50
+#define C_VERBOSE_IMAGES (B_VERBOSE_IMAGES + 21)
 
-#define OPTIONS_TITLE "Lynx Options Configuration"
+#endif /* EXP_FORMS_OPTIONS */
 
 #endif /* LYOPTIONS_H */
diff --git a/src/LYPrint.c b/src/LYPrint.c
index 1b5bcb5d..548a577f 100644
--- a/src/LYPrint.c
+++ b/src/LYPrint.c
@@ -688,7 +688,7 @@ PUBLIC int printfile ARGS1(
 		     *	For PMDF, put the subject in the
 		     *	header file and close it. - FM
 		     */
-		    fprintf(hfd, "Subject: %.70s\n\n", sug_filename);
+		    fprintf(hfd, "Subject: %.70s\n\n", newdoc->title);
 		    LYCloseTempFP(hfd);
 		    /*
 		     *	Now set up the command. - FM
@@ -710,7 +710,7 @@ PUBLIC int printfile ARGS1(
 			    "%s %s/subject=\"%.70s\" %s %s",
 			    system_mail,
 			    system_mail_flags,
-			    sug_filename,
+			    newdoc->title,
 			    tempfile,
 			    user_response);
 		}
@@ -818,9 +818,11 @@ PUBLIC int printfile ARGS1(
 
 		/*
 		 *  Add the To, Subject, and X-URL headers. - FM
+		 *  Use newdoc->title as a subject instead of sug_filename:
+		 *  MORE readable and 8-bit letters shouldn't be a problem - LP
 		 */
 		fprintf(outfile_fp, "To: %s\nSubject: %s\n",
-				     user_response, sug_filename);
+				     user_response, newdoc->title);
 		fprintf(outfile_fp, "X-URL: %s\n\n", newdoc->address);
 		if (LYPrependBaseToSource && HTisDocumentSource()) {
 		    /*
@@ -992,7 +994,7 @@ PUBLIC int printfile ARGS1(
 		if (keypad_mode)
 		    printlist(outfile_fp, FALSE);
 
-		fclose(outfile_fp);
+		LYCloseTempFP(outfile_fp);
 
 		/* find the right printer number */
 		{
@@ -1264,28 +1266,30 @@ PUBLIC int print_options ARGS2(
 
     fprintf(fp0, "<html>\n<head>\n<title>%s</title>\n</head>\n<body>\n",
 		 PRINT_OPTIONS_TITLE);
-
-    fprintf(fp0,"<h1>Printing Options (%s Version %s)</h1><pre>\n",
-				       LYNX_NAME, LYNX_VERSION);
+    fprintf(fp0, "<h1>%s (%s), help on <a href=\"%s%s\">%s</a></h1>\n",
+		 LYNX_NAME, LYNX_VERSION,
+		 helpfilepath, PRINT_OPTIONS_HELP, PRINT_OPTIONS_TITLE);
 
     pages = (lines_in_file+65)/66;
-    sprintf(buffer,
-	   "   There are %d lines, or approximately %d page%s, to print.\n",
-	    lines_in_file, pages, (pages > 1 ? "s" : ""));
+    fprintf(fp0, "<pre>\n");
+    sprintf(buffer, "   \
+<em>You print the document:</em> %s\n   \
+       <em>Number of lines:</em> %d\n   \
+       <em>Number of pages:</em> %d page%s (approximately)\n",
+	tempfile, lines_in_file, pages, (pages > 1 ? "s" : ""));
     fputs(buffer,fp0);
 
     if (no_print || no_disk_save || child_lynx || no_mail)
-	fprintf(fp0, "   Some print functions have been disabled!!!\n");
+	fprintf(fp0, "   <em>Some print functions have been disabled!</em>\n");
 
-    fprintf(fp0, "   You have the following print choices.\n");
-    fprintf(fp0, "   Please select one:\n\n");
+    fprintf(fp0, "\nStandard print options:\n");
 
     if (child_lynx == FALSE && no_disk_save == FALSE && no_print == FALSE)
 	fprintf(fp0,
    "   <a href=\"LYNXPRINT://LOCAL_FILE/lines=%d\">Save to a local file</a>\n",
 		lines_in_file);
     else
-	fprintf(fp0,"   Save to disk disabled.\n");
+	fprintf(fp0,"   <em>Save to disk disabled.</em>\n");
     if (child_lynx == FALSE && no_mail == FALSE && local_host_only == FALSE)
 	 fprintf(fp0,
    "   <a href=\"LYNXPRINT://MAIL_FILE/lines=%d\">Mail the file</a>\n",
@@ -1300,6 +1304,7 @@ PUBLIC int print_options ARGS2(
 		lines_in_file);
 #endif
 
+    fprintf(fp0, "\nLocal additions:\n");
     for (count = 0, cur_printer = printers; cur_printer != NULL;
 	cur_printer = cur_printer->next, count++)
     if (no_print == FALSE || cur_printer->always_enabled) {
diff --git a/src/LYPrint.h b/src/LYPrint.h
index fec8200f..5229e368 100644
--- a/src/LYPrint.h
+++ b/src/LYPrint.h
@@ -9,7 +9,5 @@
 extern int printfile PARAMS((document *newdoc));
 extern int print_options PARAMS((char **newfile, int lines_in_file));
 
-#define PRINT_OPTIONS_TITLE "Lynx Printing Options"
-
 #endif /* LYPRINT_H */
 
diff --git a/src/LYShowInfo.c b/src/LYShowInfo.c
index 7afe1670..03f1cb02 100644
--- a/src/LYShowInfo.c
+++ b/src/LYShowInfo.c
@@ -75,13 +75,24 @@ PUBLIC int showinfo ARGS4(
     LYAddMETAcharsetToFD(fp0, -1);
     fprintf(fp0, "<title>%s</title>\n</head>\n<body>\n",
 		 SHOWINFO_TITLE);
-    fprintf(fp0,"<h1>You have reached the Information Page</h1>\n");
-    fprintf(fp0,"<h2>%s Version %s</h2>\n", LYNX_NAME, LYNX_VERSION);
+
+#ifdef LYNX_COMPILE_OPTS
+    fprintf(fp0, "<h1>%s %s (<a href=\"%s\">%s</a>) - <a href=\"%s\">compile time settings</a>\n",
+		 LYNX_NAME, LYNX_VERSION,
+		 (LYNX_RELEASE ? LYNX_WWW_HOME   : LYNX_WWW_DIST),
+		 (LYNX_RELEASE ? "major release" : "development version"),
+		 LYNX_COMPILE_OPTS);
+#else
+    fprintf(fp0, "<h1>%s %s (<a href=\"%s\">%s</a>)\n",
+		 LYNX_NAME, LYNX_VERSION,
+		 (LYNX_RELEASE ? LYNX_WWW_HOME   : LYNX_WWW_DIST),
+		 (LYNX_RELEASE ? "major release" : "development version") );
+#endif
 
 #ifdef DIRED_SUPPORT
     if (lynx_edit_mode && nlinks > 0) {
-	fprintf(fp0,
-	 "<h2>Directory that you are currently viewing</h2>\n<pre>");
+	fprintf(fp0, "<pre>\n");
+	fprintf(fp0, "\nDirectory that you are currently viewing\n\n");
 
 	cp = doc->address;
 	if (!strncmp(cp, "file://localhost", 16))
@@ -157,7 +168,7 @@ PUBLIC int showinfo ARGS4(
 	    cp = ctime(&dir_info.st_atime);
 	    fprintf(fp0, "   <em>Last accessed:</em>  %s\n", cp);
 
-	    fprintf(fp0, "   <em>Access Permissions</em>\n");
+	    fprintf(fp0, "   Access Permissions\n");
 	    fprintf(fp0, "      <em>Owner:</em>  ");
 	    modes[0] = '\0';
 	    modes[1] = '\0';   /* In case there are no permissions */
diff --git a/src/LYUpload.c b/src/LYUpload.c
index fd3b4616..78609f2c 100644
--- a/src/LYUpload.c
+++ b/src/LYUpload.c
@@ -241,12 +241,12 @@ PUBLIC int LYUpload_options ARGS2(
 
     fprintf(fp0, "<head>\n<title>%s</title>\n</head>\n<body>\n",
 		 UPLOAD_OPTIONS_TITLE);
-
-    fprintf(fp0, "<h1>Upload Options (%s Version %s)</h1><pre>\n",
-				      LYNX_NAME, LYNX_VERSION);
-
-    fputs("   You have the following upload choices.<br>\n", fp0);
-    fputs("   Please select one:<br>\n\n", fp0);
+    fprintf(fp0, "<h1>%s (%s), help on <a href=\"%s%s\">%s</a></h1>\n",
+		 LYNX_NAME, LYNX_VERSION,
+		 helpfilepath, UPLOAD_OPTIONS_HELP, UPLOAD_OPTIONS_TITLE);
+    fprintf(fp0, "<pre>\n");
+    fprintf(fp0, "   <em>Upload To:</em> %s\n", curloc);
+    fputs("\nUpload options:\n", fp0);
 
     if (uploaders != NULL) {
 	for (count = 0, cur_upload = uploaders;
@@ -259,10 +259,12 @@ PUBLIC int LYUpload_options ARGS2(
 	    fprintf(fp0, "</a>\n");
 	}
     } else {
-	fprintf(fp0, "\n   \
-No other upload methods have been defined yet.  You may define\n   \
-an unlimited number of upload methods using the lynx.cfg file.\n");
-
+	fprintf(fp0, "   \
+&lt;NONE&gt;\n\n   \
+You may define an unlimited number of upload methods.\n   \
+Please refer to the <a href=\"%s\">lynx.cfg</a> file, \
+sections 'UPLOAD' and 'INCLUDE'.\n",
+	LYNX_CFG_FILE);
     }
     fprintf(fp0, "</pre>\n</body>\n");
     LYCloseTempFP(fp0);
diff --git a/src/LYUpload.h b/src/LYUpload.h
index 17542b06..563c063e 100644
--- a/src/LYUpload.h
+++ b/src/LYUpload.h
@@ -9,7 +9,5 @@
 extern int LYUpload PARAMS((char *line));
 extern int LYUpload_options PARAMS((char **newfile, char *directory));
 
-#define UPLOAD_OPTIONS_TITLE "Lynx Upload Options"
-
 #endif /* LYUPLOAD_H */
 
diff --git a/src/LYUtils.c b/src/LYUtils.c
index c4deaac9..532bd69d 100644
--- a/src/LYUtils.c
+++ b/src/LYUtils.c
@@ -2038,10 +2038,8 @@ PUBLIC int HTCheckForInterrupt NOARGS
 
     if (fake_zap > 0) {
 	fake_zap--;
-	if (TRACE) {
-	    fprintf(tfp, "\r *** Got simulated 'Z' ***\n");
-	    fflush(tfp);
-	}
+	CTRACE(tfp, "\r *** Got simulated 'Z' ***\n");
+	CTRACE_FLUSH(tfp);
 	CTRACE_SLEEP(AlertSecs);
 	return((int)TRUE);
     }
@@ -2158,10 +2156,8 @@ PUBLIC int HTCheckForInterrupt NOARGS
 
     if (fake_zap > 0) {
 	fake_zap--;
-	if (TRACE) {
-	    fprintf(tfp, "\r *** Got simulated 'Z' ***\n");
-	    fflush(tfp);
-	}
+	CTRACE(tfp, "\r *** Got simulated 'Z' ***\n");
+	CTRACE_FLUSH(tfp);
 	CTRACE_SLEEP(AlertSecs);
 	return((int)TRUE);
     }
@@ -5781,6 +5777,7 @@ PUBLIC void LYRemoveTemp ARGS1(
 #endif
 		CTRACE(tfp, "...LYRemoveTemp done(%d)%s\n", code,
 		       (p->file != 0) ? ", closed" : "");
+		CTRACE_FLUSH(tfp);
 		if (p->file != 0)
 		    fclose(p->file);
 		free(p->name);
diff --git a/src/LYrcFile.c b/src/LYrcFile.c
index 3f3e57ba..77f5dca1 100644
--- a/src/LYrcFile.c
+++ b/src/LYrcFile.c
@@ -515,6 +515,18 @@ PUBLIC void read_rc NOPARAMS
 		local_exec_on_local_files=FALSE;
 #endif /* ALLOW_USERS_TO_CHANGE_EXEC_WITHIN_OPTIONS */
 
+	} else if ((cp = LYstrstr(line_buffer,
+				  "verbose_images")) != NULL &&
+		   cp-line_buffer < number_sign) {
+
+	   if ((cp2 = (char *)strchr(cp, '=')) != NULL)
+		cp = cp2 + 1;
+	   cp = LYSkipBlanks(cp);
+	   if (!strncasecomp(cp, "on", 2))
+		verbose_img = 1;
+	   else if (!strncasecomp(cp, "off", 3))
+		verbose_img = 0;
+
 	} /* end of if */
 
     } /* end of while */
@@ -917,6 +929,13 @@ PUBLIC int save_rc NOPARAMS
 		(local_exec_on_local_files ? "on" : "off"));
 #endif /* defined(EXEC_LINKS) || defined(EXEC_SCRIPTS) */
 
+    fprintf(fp, "\
+# If verbose_images is \"on\", lynx will print the name of the image\n\
+# source file in place of [INLINE], [LINK] or [IMAGE]\n\
+# See also VERBOSE_IMAGES in lynx.cfg\n");
+    fprintf(fp, "verbose_images=%s\n\n",
+		verbose_img ? "on" : "off");
+
     /*
      *  Close the RC file.
      */
diff --git a/src/chrtrans/README.format b/src/chrtrans/README.format
index 5e8d029c..636afd32 100644
--- a/src/chrtrans/README.format
+++ b/src/chrtrans/README.format
@@ -82,6 +82,10 @@ c) character translation definitions:
  * where <range> ::= <fontpos>-<fontpos>
  * and <unicode> ::= U+<h><h><h><h>
  * and <h> ::= <hexadecimal digit>
+ *
+  [Note that <fontpos> _without_ targets assumed notdefined,
+  so tables from ftp.unicode.org need no patching.]
+
 
 d) string replacement definitions:
 
diff --git a/src/chrtrans/cp1250_uni.tbl b/src/chrtrans/cp1250_uni.tbl
index a6852cfa..e7b19995 100644
--- a/src/chrtrans/cp1250_uni.tbl
+++ b/src/chrtrans/cp1250_uni.tbl
@@ -27,14 +27,14 @@ OWinLatin2 (cp1250)
 0x20-0x7e       idem
 #
 0x80	U+20AC	#EURO SIGN
-#0x81	      	#UNDEFINED
+0x81	      	#UNDEFINED
 0x82	U+201A	#SINGLE LOW-9 QUOTATION MARK
-#0x83	      	#UNDEFINED
+0x83	      	#UNDEFINED
 0x84	U+201E	#DOUBLE LOW-9 QUOTATION MARK
 0x85	U+2026	#HORIZONTAL ELLIPSIS
 0x86	U+2020	#DAGGER
 0x87	U+2021	#DOUBLE DAGGER
-#0x88	      	#UNDEFINED
+0x88	      	#UNDEFINED
 0x89	U+2030	#PER MILLE SIGN
 0x8A	U+0160	#LATIN CAPITAL LETTER S WITH CARON
 0x8B	U+2039	#SINGLE LEFT-POINTING ANGLE QUOTATION MARK
@@ -42,7 +42,7 @@ OWinLatin2 (cp1250)
 0x8D	U+0164	#LATIN CAPITAL LETTER T WITH CARON
 0x8E	U+017D	#LATIN CAPITAL LETTER Z WITH CARON
 0x8F	U+0179	#LATIN CAPITAL LETTER Z WITH ACUTE
-#0x90	      	#UNDEFINED
+0x90	      	#UNDEFINED
 0x91	U+2018	#LEFT SINGLE QUOTATION MARK
 0x92	U+2019	#RIGHT SINGLE QUOTATION MARK
 0x93	U+201C	#LEFT DOUBLE QUOTATION MARK
@@ -50,7 +50,7 @@ OWinLatin2 (cp1250)
 0x95	U+2022	#BULLET
 0x96	U+2013	#EN DASH
 0x97	U+2014	#EM DASH
-#0x98	      	#UNDEFINED
+0x98	      	#UNDEFINED
 0x99	U+2122	#TRADE MARK SIGN
 0x9A	U+0161	#LATIN SMALL LETTER S WITH CARON
 0x9B	U+203A	#SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
diff --git a/src/chrtrans/cp1253_uni.tbl b/src/chrtrans/cp1253_uni.tbl
index dac37990..ed50b1ed 100644
--- a/src/chrtrans/cp1253_uni.tbl
+++ b/src/chrtrans/cp1253_uni.tbl
@@ -27,22 +27,22 @@ OWinGreek (cp1253)
 0x20-0x7e       idem
 #
 0x80    U+20AC  #EURO SIGN
-#0x81		#UNDEFINED
+0x81		#UNDEFINED
 0x82	U+201A	#SINGLE LOW-9 QUOTATION MARK
 0x83	U+0192	#LATIN SMALL LETTER F WITH HOOK
 0x84	U+201E	#DOUBLE LOW-9 QUOTATION MARK
 0x85	U+2026	#HORIZONTAL ELLIPSIS
 0x86	U+2020	#DAGGER
 0x87	U+2021	#DOUBLE DAGGER
-#0x88		#UNDEFINED
+0x88		#UNDEFINED
 0x89	U+2030	#PER MILLE SIGN
-#0x8A		#UNDEFINED
+0x8A		#UNDEFINED
 0x8B	U+2039	#SINGLE LEFT-POINTING ANGLE QUOTATION MARK
-#0x8C		#UNDEFINED
-#0x8D		#UNDEFINED
-#0x8E		#UNDEFINED
-#0x8F		#UNDEFINED
-#0x90		#UNDEFINED
+0x8C		#UNDEFINED
+0x8D		#UNDEFINED
+0x8E		#UNDEFINED
+0x8F		#UNDEFINED
+0x90		#UNDEFINED
 0x91	U+2018	#LEFT SINGLE QUOTATION MARK
 0x92	U+2019	#RIGHT SINGLE QUOTATION MARK
 0x93	U+201C	#LEFT DOUBLE QUOTATION MARK
@@ -50,14 +50,14 @@ OWinGreek (cp1253)
 0x95	U+2022	#BULLET
 0x96	U+2013	#EN DASH
 0x97	U+2014	#EM DASH
-#0x98		#UNDEFINED
+0x98		#UNDEFINED
 0x99	U+2122	#TRADE MARK SIGN
-#0x9A		#UNDEFINED
+0x9A		#UNDEFINED
 0x9B	U+203A	#SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
-#0x9C		#UNDEFINED
-#0x9D		#UNDEFINED
-#0x9E		#UNDEFINED
-#0x9F		#UNDEFINED
+0x9C		#UNDEFINED
+0x9D		#UNDEFINED
+0x9E		#UNDEFINED
+0x9F		#UNDEFINED
 0xA0	U+00A0	#NO-BREAK SPACE
 0xA1	U+0385	#GREEK DIALYTIKA TONOS
 0xA2	U+0386	#GREEK CAPITAL LETTER ALPHA WITH TONOS
@@ -68,7 +68,7 @@ OWinGreek (cp1253)
 0xA7	U+00A7	#SECTION SIGN
 0xA8	U+00A8	#DIAERESIS
 0xA9	U+00A9	#COPYRIGHT SIGN
-#0xAA		#UNDEFINED
+0xAA		#UNDEFINED
 0xAB	U+00AB	#LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
 0xAC	U+00AC	#NOT SIGN
 0xAD	U+00AD	#SOFT HYPHEN
@@ -108,7 +108,7 @@ OWinGreek (cp1253)
 0xCF	U+039F	#GREEK CAPITAL LETTER OMICRON
 0xD0	U+03A0	#GREEK CAPITAL LETTER PI
 0xD1	U+03A1	#GREEK CAPITAL LETTER RHO
-#0xD2		#UNDEFINED
+0xD2		#UNDEFINED
 0xD3	U+03A3	#GREEK CAPITAL LETTER SIGMA
 0xD4	U+03A4	#GREEK CAPITAL LETTER TAU
 0xD5	U+03A5	#GREEK CAPITAL LETTER UPSILON
@@ -153,4 +153,4 @@ OWinGreek (cp1253)
 0xFC	U+03CC	#GREEK SMALL LETTER OMICRON WITH TONOS
 0xFD	U+03CD	#GREEK SMALL LETTER UPSILON WITH TONOS
 0xFE	U+03CE	#GREEK SMALL LETTER OMEGA WITH TONOS
-#0xFF		#UNDEFINED
+0xFF		#UNDEFINED
diff --git a/src/chrtrans/cp1255_uni.tbl b/src/chrtrans/cp1255_uni.tbl
index a30d9a7d..67517353 100644
--- a/src/chrtrans/cp1255_uni.tbl
+++ b/src/chrtrans/cp1255_uni.tbl
@@ -27,7 +27,7 @@ OWinHebrew (cp1255)
 0x20-0x7e       idem
 #
 0x80	U+20AC	#EURO SIGN
-#0x81	      	#UNDEFINED
+0x81	      	#UNDEFINED
 0x82	U+201A	#SINGLE LOW-9 QUOTATION MARK
 0x83	U+0192	#LATIN SMALL LETTER F WITH HOOK
 0x84	U+201E	#DOUBLE LOW-9 QUOTATION MARK
@@ -36,13 +36,13 @@ OWinHebrew (cp1255)
 0x87	U+2021	#DOUBLE DAGGER
 0x88	U+02C6	#MODIFIER LETTER CIRCUMFLEX ACCENT
 0x89	U+2030	#PER MILLE SIGN
-#0x8A	      	#UNDEFINED
+0x8A	      	#UNDEFINED
 0x8B	U+2039	#SINGLE LEFT-POINTING ANGLE QUOTATION MARK
-#0x8C	      	#UNDEFINED
-#0x8D	      	#UNDEFINED
-#0x8E	      	#UNDEFINED
-#0x8F	      	#UNDEFINED
-#0x90	      	#UNDEFINED
+0x8C	      	#UNDEFINED
+0x8D	      	#UNDEFINED
+0x8E	      	#UNDEFINED
+0x8F	      	#UNDEFINED
+0x90	      	#UNDEFINED
 0x91	U+2018	#LEFT SINGLE QUOTATION MARK
 0x92	U+2019	#RIGHT SINGLE QUOTATION MARK
 0x93	U+201C	#LEFT DOUBLE QUOTATION MARK
@@ -52,12 +52,12 @@ OWinHebrew (cp1255)
 0x97	U+2014	#EM DASH
 0x98	U+02DC	#SMALL TILDE
 0x99	U+2122	#TRADE MARK SIGN
-#0x9A	      	#UNDEFINED
+0x9A	      	#UNDEFINED
 0x9B	U+203A	#SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
-#0x9C	      	#UNDEFINED
-#0x9D	      	#UNDEFINED
-#0x9E	      	#UNDEFINED
-#0x9F	      	#UNDEFINED
+0x9C	      	#UNDEFINED
+0x9D	      	#UNDEFINED
+0x9E	      	#UNDEFINED
+0x9F	      	#UNDEFINED
 0xA0	U+00A0	#NO-BREAK SPACE
 0xA1	U+00A1	#INVERTED EXCLAMATION MARK
 0xA2	U+00A2	#CENT SIGN
@@ -100,7 +100,7 @@ OWinHebrew (cp1255)
 0xC7	U+05B7	#HEBREW POINT PATAH
 0xC8	U+05B8	#HEBREW POINT QAMATS
 0xC9	U+05B9	#HEBREW POINT HOLAM
-#0xCA		#UNDEFINED
+0xCA		#UNDEFINED
 0xCB	U+05BB	#HEBREW POINT QUBUTS
 0xCC	U+05BC	#HEBREW POINT DAGESH OR MAPIQ
 0xCD	U+05BD	#HEBREW POINT METEG
@@ -115,13 +115,13 @@ OWinHebrew (cp1255)
 0xD6	U+05F2	#HEBREW LIGATURE YIDDISH DOUBLE YOD
 0xD7	U+05F3	#HEBREW PUNCTUATION GERESH
 0xD8	U+05F4	#HEBREW PUNCTUATION GERSHAYIM
-#0xD9	      	#UNDEFINED
-#0xDA	      	#UNDEFINED
-#0xDB	      	#UNDEFINED
-#0xDC	      	#UNDEFINED
-#0xDD	      	#UNDEFINED
-#0xDE	      	#UNDEFINED
-#0xDF	      	#UNDEFINED
+0xD9	      	#UNDEFINED
+0xDA	      	#UNDEFINED
+0xDB	      	#UNDEFINED
+0xDC	      	#UNDEFINED
+0xDD	      	#UNDEFINED
+0xDE	      	#UNDEFINED
+0xDF	      	#UNDEFINED
 0xE0	U+05D0	#HEBREW LETTER ALEF
 0xE1	U+05D1	#HEBREW LETTER BET
 0xE2	U+05D2	#HEBREW LETTER GIMEL
@@ -149,8 +149,8 @@ OWinHebrew (cp1255)
 0xF8	U+05E8	#HEBREW LETTER RESH
 0xF9	U+05E9	#HEBREW LETTER SHIN
 0xFA	U+05EA	#HEBREW LETTER TAV
-#0xFB	      	#UNDEFINED
-#0xFC	      	#UNDEFINED
+0xFB	      	#UNDEFINED
+0xFC	      	#UNDEFINED
 0xFD	U+200E	#LEFT-TO-RIGHT MARK
 0xFE	U+200F	#RIGHT-TO-LEFT MARK
-#0xFF	      	#UNDEFINED
+0xFF	      	#UNDEFINED
diff --git a/src/chrtrans/cp1256_uni.tbl b/src/chrtrans/cp1256_uni.tbl
index 0e045aaa..844e450d 100644
--- a/src/chrtrans/cp1256_uni.tbl
+++ b/src/chrtrans/cp1256_uni.tbl
@@ -36,12 +36,12 @@ OWinArabic (cp1256)
 0x87	U+2021	#DOUBLE DAGGER
 0x88	U+02C6	#MODIFIER LETTER CIRCUMFLEX ACCENT
 0x89	U+2030	#PER MILLE SIGN
-#0x8A	      	#UNDEFINED
+0x8A	      	#UNDEFINED
 0x8B	U+2039	#SINGLE LEFT-POINTING ANGLE QUOTATION MARK
 0x8C	U+0152	#LATIN CAPITAL LIGATURE OE
 0x8D	U+0686	#ARABIC LETTER TCHEH
 0x8E	U+0698	#ARABIC LETTER JEH
-#0x8F	      	#UNDEFINED
+0x8F	      	#UNDEFINED
 0x90	U+06AF	#ARABIC LETTER GAF
 0x91	U+2018	#LEFT SINGLE QUOTATION MARK
 0x92	U+2019	#RIGHT SINGLE QUOTATION MARK
@@ -50,14 +50,14 @@ OWinArabic (cp1256)
 0x95	U+2022	#BULLET
 0x96	U+2013	#EN DASH
 0x97	U+2014	#EM DASH
-#0x98	      	#UNDEFINED
+0x98	      	#UNDEFINED
 0x99	U+2122	#TRADE MARK SIGN
-#0x9A	      	#UNDEFINED
+0x9A	      	#UNDEFINED
 0x9B	U+203A	#SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
 0x9C	U+0153	#LATIN SMALL LIGATURE OE
 0x9D	U+200C	#ZERO WIDTH NON-JOINER
 0x9E	U+200D	#ZERO WIDTH JOINER
-#0x9F	      	#UNDEFINED
+0x9F	      	#UNDEFINED
 0xA0	U+00A0	#NO-BREAK SPACE
 0xA1	U+060C	#ARABIC COMMA
 0xA2	U+00A2	#CENT SIGN
@@ -68,7 +68,7 @@ OWinArabic (cp1256)
 0xA7	U+00A7	#SECTION SIGN
 0xA8	U+00A8	#DIAERESIS
 0xA9	U+00A9	#COPYRIGHT SIGN
-#0xAA	      	#UNDEFINED
+0xAA	      	#UNDEFINED
 0xAB	U+00AB	#LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
 0xAC	U+00AC	#NOT SIGN
 0xAD	U+00AD	#SOFT HYPHEN
@@ -90,7 +90,7 @@ OWinArabic (cp1256)
 0xBD	U+00BD	#VULGAR FRACTION ONE HALF
 0xBE	U+00BE	#VULGAR FRACTION THREE QUARTERS
 0xBF	U+061F	#ARABIC QUESTION MARK
-#0xC0	      	#UNDEFINED
+0xC0	      	#UNDEFINED
 0xC1	U+0621	#ARABIC LETTER HAMZA
 0xC2	U+0622	#ARABIC LETTER ALEF WITH MADDA ABOVE
 0xC3	U+0623	#ARABIC LETTER ALEF WITH HAMZA ABOVE
@@ -153,4 +153,4 @@ OWinArabic (cp1256)
 0xFC	U+00FC	#LATIN SMALL LETTER U WITH DIAERESIS
 0xFD	U+200E	#LEFT-TO-RIGHT MARK
 0xFE	U+200F	#RIGHT-TO-LEFT MARK
-#0xFF	      	#UNDEFINED
+0xFF	      	#UNDEFINED
diff --git a/src/chrtrans/cp1257_uni.tbl b/src/chrtrans/cp1257_uni.tbl
index 8e830cd5..5339fa7c 100644
--- a/src/chrtrans/cp1257_uni.tbl
+++ b/src/chrtrans/cp1257_uni.tbl
@@ -27,22 +27,22 @@ OWinBaltRim (cp1257)
 0x20-0x7e       idem
 #
 0x80	U+20AC	#EURO SIGN
-#0x81	      	#UNDEFINED
+0x81	      	#UNDEFINED
 0x82	U+201A	#SINGLE LOW-9 QUOTATION MARK
-#0x83	      	#UNDEFINED
+0x83	      	#UNDEFINED
 0x84	U+201E	#DOUBLE LOW-9 QUOTATION MARK
 0x85	U+2026	#HORIZONTAL ELLIPSIS
 0x86	U+2020	#DAGGER
 0x87	U+2021	#DOUBLE DAGGER
-#0x88	      	#UNDEFINED
+0x88	      	#UNDEFINED
 0x89	U+2030	#PER MILLE SIGN
-#0x8A	      	#UNDEFINED
+0x8A	      	#UNDEFINED
 0x8B	U+2039	#SINGLE LEFT-POINTING ANGLE QUOTATION MARK
-#0x8C	      	#UNDEFINED
+0x8C	      	#UNDEFINED
 0x8D	U+00A8	#DIAERESIS
 0x8E	U+02C7	#CARON
 0x8F	U+00B8	#CEDILLA
-#0x90	      	#UNDEFINED
+0x90	      	#UNDEFINED
 0x91	U+2018	#LEFT SINGLE QUOTATION MARK
 0x92	U+2019	#RIGHT SINGLE QUOTATION MARK
 0x93	U+201C	#LEFT DOUBLE QUOTATION MARK
@@ -50,20 +50,20 @@ OWinBaltRim (cp1257)
 0x95	U+2022	#BULLET
 0x96	U+2013	#EN DASH
 0x97	U+2014	#EM DASH
-#0x98	      	#UNDEFINED
+0x98	      	#UNDEFINED
 0x99	U+2122	#TRADE MARK SIGN
-#0x9A	      	#UNDEFINED
+0x9A	      	#UNDEFINED
 0x9B	U+203A	#SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
-#0x9C	      	#UNDEFINED
+0x9C	      	#UNDEFINED
 0x9D	U+00AF	#MACRON
 0x9E	U+02DB	#OGONEK
-#0x9F	      	#UNDEFINED
+0x9F	      	#UNDEFINED
 0xA0	U+00A0	#NO-BREAK SPACE
-#0xA1	      	#UNDEFINED
+0xA1	      	#UNDEFINED
 0xA2	U+00A2	#CENT SIGN
 0xA3	U+00A3	#POUND SIGN
 0xA4	U+00A4	#CURRENCY SIGN
-#0xA5	      	#UNDEFINED
+0xA5	      	#UNDEFINED
 0xA6	U+00A6	#BROKEN BAR
 0xA7	U+00A7	#SECTION SIGN
 0xA8	U+00D8	#LATIN CAPITAL LETTER O WITH STROKE
diff --git a/src/makefile.dos b/src/makefile.dos
index 4c87b064..283bcc27 100644
--- a/src/makefile.dos
+++ b/src/makefile.dos
@@ -12,7 +12,11 @@ LYStyle.o LYHash.o
 CFLAGS= $(MCFLAGS) -I. -I.. $(SLANGINC)

 

 CC = gcc

-MCFLAGS = -O3 -DHAVE_GETBKGD -DDISP_PARTIAL -DUSE_ZLIB -DUSE_EXTERNALS -DCOLOR_CURSES -DNCURSES -DFANCY_CURSES -DACCESS_AUTH -DNO_CUSERID -DNOUSERS -DDOSPATH -DNO_TTYTYPE -DNO_UTMP -Ichrtrans -I../WWW/library/implementation -I../curses  -I../djgpp/tcplib/include -I../djgpp/tcplib/include/tcp

+MCFLAGS = -O3 -DHAVE_GETBKGD -DDISP_PARTIAL -DUSE_ZLIB \

+ -DUSE_EXTERNALS -DCOLOR_CURSES -DNCURSES -DFANCY_CURSES \

+ -DACCESS_AUTH -DNO_CUSERID -DNOUSERS -DDOSPATH -DNO_TTYTYPE -DNO_UTMP \

+ -Ichrtrans -I../WWW/library/implementation \

+ -I../curses  -I../djgpp/tcplib/include -I../djgpp/tcplib/include/tcp

 WWWLIB = ../WWW/library/djgpp/libwww.a ../curses/pdcurses.a ../djgpp/tcplib/obj/libtcp.a

 LIBS=-lz

 

diff --git a/src/makefile.in b/src/makefile.in
index b7289f3c..3e6786d9 100644
--- a/src/makefile.in
+++ b/src/makefile.in
@@ -44,6 +44,9 @@ CC_OPTS		= $(CPP_OPTS) $(CFLAGS)
 LINT		= @LINT@
 LINTOPTS	=
 
+COMPRESS_PROG	=@COMPRESS_PROG@
+COMPRESS_EXT	=@COMPRESS_EXT@
+
 CHARTRANS_OBJS=UCdomap.o UCAux.o UCAuto.o
 OBJS=  LYClean.o LYShowInfo.o LYEdit.o LYStrings.o \
 LYMail.o HTAlert.o GridText.o LYGetFile.o \
@@ -69,7 +72,7 @@ all: lynx$x
 @RULE_CC@
 	@ECHO_CC@$(CPP) -C $(CPP_OPTS) $*.c >$@
 
-lynx$x:   message do_chartrans_stuff $(OBJS) $(WWWLIB)
+lynx$x:   message do_chartrans_stuff ../LYHelp.h $(OBJS) $(WWWLIB)
 	@echo "Linking and creating Lynx executable"
 	$(CC) $(CC_OPTS) $(LDFLAGS) -o $@  $(OBJS) $(WWWLIB) $(LIBS)
 	@echo "Copying Lynx executable into top-level directory"
diff --git a/userdefs.h b/userdefs.h
index e991593b..467b3b43 100644
--- a/userdefs.h
+++ b/userdefs.h
@@ -230,7 +230,7 @@
 #else     /* UNIX */
 
 /**************************
- * NOTE: This variable is set by the configure scrip; editing changes will
+ * NOTE: This variable is set by the configure script; editing changes will
  * be ignored.
  *
  * LYNX_CFG_FILE is the location and name of the default lynx
@@ -492,7 +492,7 @@
  * <dt>?<dd><a href="file://localhost/path/jumps.html">This Shortcut List</a>
  *
  * If not defined here or in lynx.cfg, the JUMP command will invoke
- * the NO_JUMPFILE statusline message (see LYMessages_en.h).  The prompt
+ * the NO_JUMPFILE status line message (see LYMessages_en.h).  The prompt
  * associated with the default jumps file is defined as JUMP_PROMPT in
  * LYMessages_en.h and can be modified in lynx.cfg.  Additional, alternate
  * jumps files can be defined and mapped to keystrokes, and alternate
@@ -697,7 +697,7 @@
 * support via the 'o'ptions menu, and can save that choice as the startup
 * default via the .lynxrc file.  When on, the setting can be STANDARD or
 * ADVANCED.  If support is set to the latter, and the user mode also is
-* ADVANCED, the VIEW_BOOKMARK command will invoke a statusline prompt at
+* ADVANCED, the VIEW_BOOKMARK command will invoke a status line prompt at
 * which the user can enter the letter token (A - Z) of the desired bookmark,
 * or '=' to get a menu of available bookmark files.  The menu always is
 * presented in NOVICE or INTERMEDIATE mode, or if the support is set to
@@ -802,10 +802,10 @@
 
 /********************************
  * If COLLAPSE_BR_TAGS is set FALSE, Lynx will not collapse serial
- * BR tags.  If set TRUE, two or more concurrent BRs will be collapsed 
- * into a single blank line.  Note that the valid way to insert extra 
- * blank lines in HTML is via a PRE block with only newlines in the 
- * block. 
+ * BR tags.  If set TRUE, two or more concurrent BRs will be collapsed
+ * into a single blank line.  Note that the valid way to insert extra
+ * blank lines in HTML is via a PRE block with only newlines in the
+ * block.
  *
  * The default defined here can be changed in lynx.cfg.
  */
@@ -837,10 +837,10 @@
 
 /*****************************
  * The following three definitions set the number of seconds for
- * pauses following statusline messages that would otherwise be
+ * pauses following status line messages that would otherwise be
  * replaced immediately, and are more important than the unpaused
  * progress messages.  Those set by INFOSECS are also basically
- * progress messages (e.g., that a prompted input has been cancelled)
+ * progress messages (e.g., that a prompted input has been canceled)
  * and should have the shortest pause.  Those set by MESSAGESECS are
  * informational (e.g., that a function is disabled) and should have
  * a pause of intermediate duration.  Those set by ALERTSECS typically
@@ -1042,7 +1042,7 @@
  * specify the DEFAULT setting of the users execution link
  * options, but the user may still change those options.
  * If you do not wish the user to be able to change the
- * execution link settings you may wish to use the commandline option:
+ * execution link settings you may wish to use the command line option:
  *    -restrictions=exec_frozen
  *
  * LOCAL_EXECUTION_LINKS_ALWAYS_ON will be FALSE
@@ -1076,12 +1076,12 @@
 #define MAIL_SYSTEM_ERROR_LOGGING   FALSE  /*mail a message for every error?*/
 
 /*********************************
- * If CHECKMAIL is set to TRUE, the user will be informed (via a statusline
+ * If CHECKMAIL is set to TRUE, the user will be informed (via a status line
  * message) about the existence of any unread mail at startup of Lynx, and
- * will get statusline messages if subsequent new mail arrives.  If a jumps
+ * will get status line messages if subsequent new mail arrives.  If a jumps
  * file with a lynxprog URL for invoking mail is available, or your html
  * pages include an mail launch file URL, the user thereby can access mail
- * and read the messages.  The checks and statusline reports will not be
+ * and read the messages.  The checks and status line reports will not be
  * performed if Lynx has been invoked with the -restrictions=mail switch.
  *
  *  VMS USERS !!!
@@ -1195,7 +1195,7 @@
 
 /****************************************************************
  * The LYMessages_en.h header defines default, English strings
- * used in statusline prompts, messages, and warnings during
+ * used in status line prompts, messages, and warnings during
  * program execution.  See the comments in LYMessages_en.h for
  * information on translating or customizing them for your site.
  */
@@ -1214,7 +1214,10 @@
  * the version definition with the Project Version on checkout. Just
  * ignore it. - kw */
 /* $Format: "#define LYNX_VERSION \"$ProjectVersion$\""$ */
-#define LYNX_VERSION "2.8.1dev.22"
+#define LYNX_VERSION "2.8.1dev.23"
+#define LYNX_WWW_HOME "http://lynx.browser.org/"
+#define LYNX_WWW_DIST "http://www.slcc.edu/lynx/current/"
+#define LYNX_RELEASE FALSE
 
 #ifndef MAXINT
 #define MAXINT 2147483647	/* max integer */
@@ -1292,8 +1295,8 @@
 	/* Standard locations are defined via the configure script.  When
 	 * helper applications are in your home directory or other nonstandard
 	 * locations, you probably will have to preset the path to them with
-	 * environment variables (see INSTALLATION, Section II-1d). 
-	 */ 
+	 * environment variables (see INSTALLATION, Section II-1d).
+	 */
 #endif /* DOSPATH */
 #endif /* VMS */